これは私のコードです:
import { apiInitializer } from "discourse/lib/api";
import { iconNode } from "discourse-common/lib/icon-library";
import { tracked } from "@glimmer/tracking";
export default apiInitializer((api) => {
@tracked iconName = settings.category_lock_icon || 'lock'; // 設定が未定義の場合、「lock」にフォールバック
@tracked lockIcon = iconNode(this.iconName);
困ったことに、ブラウザのコンソールには ReferenceError: iconName is not defined と表示されます。ブラウザの開発者ツールでファイルを見ると、次のようになっています:
iconName = settings.category_lock_icon || 'lock'; // Fallback to 'lock' if setting is not defined
lockIcon = (0, _iconLibrary.iconNode)((void 0).iconName);
これは、私が作成した別のトラッキング変数を使用するコンポーネント(こちらは動作します)と比較すると、次のようになります:
#buttonIcon = (() => (dt7948.i(this, "buttonIcon"), void 0))();
、元のコードは次のとおりです:
@tracked buttonIcon = localStorage.getItem('buttonIcon') != null ? localStorage.getItem('buttonIcon') : "bug";
何か間違っていますか?