smalljs$molجستجو⌘ Kمستنداتزمین بازیمقایسهاکوسیستمدربارهFA
فراداده‌های ماژولGetting Startedمعرفیمدل ذهنیشروع به کاراز تایپ‌اسکریپت به view.treeساختار پروژهابزارهاEssentialsنصبنماهاوضعیت و واکنش‌گراییمسیریابیرندرتست‌نویسیاستقراررفع اشکالDataدریافت دادهطرح‌واره‌های دادهGiper BazaMoreویتریناز React، Vue و Svelteکتابِ آشپزیAdvancedپلاگین‌هافراداده‌های ماژولآفلایننماهای شبحAboutپرسش‌های پرتکرارتیمانتشارهاAPI$mol_button_major$mol_button_minor$mol_string$mol_number$mol_text$mol_paragraph$mol_list$mol_row$mol_link$mol_check$mol_switch$mol_select$mol_scroll$mol_page$mol_pick

فراداده‌های ماژول

در کنارِ کامپوننت‌های یک ماژول، یک فایلِ name.meta.tree فراداده‌های ساخت و استقرار را اعلام می‌کند — چیزهایی که به کلِ ماژول مربوط‌اند نه به یک نمای مشخص. ماژولِ اپلیکیشن جای معمولِ آن است.اینجا app.meta.treeِ این سایت است:1include \/mol/offline/install2include \/bog/builderui/theme.css3deploy \/bog/smalljs/assets

دایرکتیوها

deploy \/path — فایل یا پوشهٔ نام‌برده را در خروجیِ ساختِ پروداکشن کپی می‌کند. برای دارایی‌های ایستایی که استقرار باید حملشان کند اما هیچ کدی واردشان نمی‌کند به کار برید — تصاویر، فونت‌ها، آیکون‌ها. اینجا \/bog/smalljs/assets لوگو و دیگر فایل‌های زیرِ assets/ را می‌فرستد.require \/path — یک ماژول را حتی وقتی هیچ کدی به آن ارجاع نمی‌دهد به‌زور واردِ باندل می‌کند، برای موردی که کدِ آن ماژول باید پیش از کدِ ماژولی که این meta.tree را دارد اجرا شود. به‌عنوان یک وابستگیِ عادیِ با اولویتِ بالا وارد می‌شود. هم مسیرِ ماژول (\/mol/wire/patch) و هم یک فایلِ منفرد کار می‌کنند.include \/path — همان واردکردنِ اجباری، اما برای وقتی که ترتیبِ بارگذاری مهم نیست. ماژول وارد می‌شود اما اولویتش پایین می‌آید، پس پس از کدی که به آن وابسته است بار می‌شود. مثال‌ها: include \/mol/offline/install (یک service worker را به‌عنوانِ اثرِ جانبی ثبت می‌کند) و include \/bog/builderui/theme.css (یک شیوه‌نامهٔ خام).pack <name> git \<url> — یک فضای‌نام را به مخزنِ git‌ای که MAM از آن می‌گیردش نگاشت می‌کند، مثلاً pack mol git \https://github.com/hyoo-ru/mam_mol.git. $mol_*، $hyoo_* و بسته‌های خودتان دقیقاً از این راه به کدِ واقعی حل می‌شوند.اصلاً چرا واردکردن را اجباری کنیم؟ بیلدر وابستگی‌ها را خودکار درمی‌آورد و فقط چیزی را که کدتان واقعاً استفاده می‌کند باندل می‌کند. گاهی به ماژولی نیاز دارید که کدتان به آن ارجاع نمی‌دهد — مثلاً اپلیکیشنی که یک کاتالوگِ کاملِ کامپوننت را باندل می‌کند تا در زمانِ اجرا موجود باشند. require و include دقیقاً همین مورد را پوشش می‌دهند؛ فقط در ترتیبِ بارگذاری فرق دارند.

کجا می‌زید

اعلانِ pack به .meta.treeِ ریشهٔ فضای‌کاری تعلق دارد — آن رجیستریِ هر بسته‌ای است که فضای‌کاری می‌تواند بگیرد. آن‌ها را همان‌جا نگه دارید، نه در زیرماژول‌ها؛ meta.treeِ خودِ یک زیرماژول باید فقط require/include/deployِ ویژهٔ خودش را داشته باشد.
ویرایش این صفحه در GitHubآیا این مفید بود؟بلهخیرقبلیپلاگین‌هابعدیآفلاین
در این صفحهدایرکتیوهاکجا می‌زید
Type to search the documentation.