大家好,
我之前从事过 iOS(Swift)开发,对 Rails 和 Javascript 只有初步的了解。我正在尝试为 discourse 开发一个插件,但在编辑器 UI 工具栏中单击按钮后显示模态对话框时遇到了困难。
我已经成功添加了按钮,大致如下:
assets/javascripts/discourse/initializers/audio-message-button.js.es6
import { withPluginApi } from 'discourse/lib/plugin-api';
function initializeWithApi(api) {
api.onToolbarCreate(toolbar => {
toolbar.addButton({
id: "audio_message",
group: "extras",
icon: "microphone",
perform: (editor) => {
}
});
});
}
export default {
name: 'audio-message-button',
initialize(container) {
withPluginApi('0.12.0', api => initializeWithApi(api));
}
};
我一直在尝试利用 ChatGPT 来帮助我开发,它在文件夹结构方面提出了一些建议。使用组件、模板、控制器文件,但我无法显示对话框。要么出现错误消息,要么什么也不发生。
我尝试在这里搜索论坛,但找不到任何能帮助我的内容。
有人能告诉我如何设置文件夹结构,特别是涉及到的文件的命名约定,以便我能显示一个简单的模态对话框来开始吗?
提前感谢!
编辑:我知道上面的代码中的 perform 函数不起作用。我尝试了几种方法来使其工作,但都没有成功。所以我在这里将其留空,只是演示了我到目前为止所做的,以便在工具栏中显示按钮。