여러분 안녕하세요,
저는 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 함수가 아무것도 하지 않는다는 점은 인지하고 있습니다. 동작하도록 하기 위해 여러 가지 방법을 시도해 보았지만, 아무것도 도움이 되지 않았습니다. 그래서 여기서는 비워 두었고, 툴바에 버튼이 표시되도록 지금까지 한 작업을 보여주기 위한 것입니다.