Directus集合列表页自定义按钮扩展开发及类型选择疑问
问题解答
不需要选择interface类型的扩展。
原因
interface类型的扩展是用来定制单个字段的交互或展示组件的(比如自定义输入框、选择器等),而你要实现的是在集合列表页头部工具栏添加全局操作按钮,属于对Directus应用界面的全局自定义修改,应该选择app类型的扩展(部分新版本的创建工具中可能标注为"Custom App Extension")。
实现思路参考
- 运行
npx create-directus-extension@latest,选择app类型初始化扩展项目 - 在扩展代码中,借助Directus提供的内置API:
- 用
useItems获取当前选中的集合项数量 - 用
useCollection获取当前集合的名称 - 调用
registerToolbarAction方法,在集合列表的工具栏(“+”按钮旁)注册你的自定义按钮
- 用
- 为按钮添加点击事件,触发弹窗并拼接显示
You selected N items of [collection name]文本
Docker部署注意事项
开发并打包好扩展后,将扩展文件夹挂载到Docker容器的/app/extensions目录下即可,比如在docker-compose.yml中添加类似的volume配置:
volumes: - ./path/to/your-extension:/app/extensions/your-extension-name
内容的提问来源于stack exchange,提问作者June
相关产品推荐
相关产品推荐

