Mở rộng Action
Trong NocoBase, Action là nút bấm trong Block, dùng để kích hoạt logic nghiệp vụ — ví dụ "Tạo mới", "Chỉnh sửa", "Xóa", v.v. Bằng cách kế thừa lớp cơ sở ActionModel, bạn có thể thêm nút Action tùy chỉnh.
Ngữ cảnh Action
Mỗi Action cần khai báo ngữ cảnh nó xuất hiện, chỉ định thông qua thuộc tính static scene:
Ví dụ
Action cấp bảng dữ liệu
Tác động lên toàn bộ bảng dữ liệu, xuất hiện trong thanh thao tác phía trên Block:
Action cấp bản ghi
Tác động lên một bản ghi, xuất hiện trong cột thao tác của mỗi hàng trong bảng:
Áp dụng cả hai ngữ cảnh
Nếu Action không phân biệt ngữ cảnh, dùng ActionSceneEnum.both:
Cấu trúc của ba cách viết là giống nhau — sự khác nhau chỉ nằm ở giá trị của static scene và văn bản nút trong defaultProps.
Đăng ký Action
Trong load() của Plugin, dùng registerModelLoaders để đăng ký tải theo nhu cầu:
Sau khi đăng ký xong, trong "Cấu hình thao tác" của Block có thể thêm các nút Action tùy chỉnh của bạn.
Mã nguồn đầy đủ
- @nocobase-example/plugin-simple-action — Ví dụ đầy đủ ba ngữ cảnh Action
Liên kết liên quan
- Thực hành Plugin: Tạo nút Action tùy chỉnh — Xây dựng nút Action ba ngữ cảnh từ đầu
- Thực hành Plugin: Tạo plugin quản lý dữ liệu kết hợp frontend-backend — Ứng dụng thực tế của Action tùy chỉnh + ctx.viewer.dialog trong Plugin hoàn chỉnh
- Tổng quan FlowEngine — Cách dùng cơ bản FlowModel
- Mở rộng Block — Block tùy chỉnh
- Mở rộng Field — Component Field tùy chỉnh
- FlowDefinition — Tham số đầy đủ và loại sự kiện của registerFlow
- Tài liệu FlowEngine đầy đủ — Tham chiếu đầy đủ

