.gjs ファイルでモバイル表示用の異なるコンテンツを表示する

お好みで、renderInOutlet 呼び出し内にクラス全体を配置することもできます。

import { apiInitializer } from "discourse/lib/api";
import Component from "@glimmer/component";
import { service } from "@ember/service";

export default apiInitializer((api) => {
  api.renderInOutlet(
    "composer-after-save-or-cancel",
    class extends Component {
      @service site;

      <template>
        {{#if this.site.mobileView}}
          Mobile!
        {{else}}
          Normal!
        {{/if}}
      </template>
    }
  );
});

しかし、.lookup() ソリューションも妥当です。結局のところ、@service は舞台裏で同じことを行っていますからね :ok_hand:

「いいね!」 6