זה הקוד שלי:
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";
האם אני עושה משהו לא בסדר?