タイトル事前入力時にエディタをフォーカス

なるほど。そのファイルでJSを使用していると仮定していました。

管理UIから、次のように記述します。

<script type="text/discourse-plugin" version="1.8.0">
    const putCursorAtEnd = require("discourse/lib/put-cursor-at-end").default;
    const { scheduleOnce } = require("@ember/runloop");

    api.onAppEvent("composer:open", ({ model }) => {
      if (model.title !== "") {
        scheduleOnce("afterRender", () => {
          putCursorAtEnd(document.querySelector("textarea.d-editor-input"));
        });
      }
    });
</script>

ちなみに、Theme CLIの使用を強くお勧めします。テンプレートからテーマコンポーネントを作成し、Discourseと同期してライブリフレッシュを行い、エディタを使用して変更を更新できます。UIを使用するよりもはるかに簡単です!

「いいね!」 2