هذا هو الكود الخاص بي:
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";
هل أقوم بشيء خاطئ؟