smalljs$mol搜索⌘ K文档演练场对比生态系统关于ZH
模块元数据Getting Started介绍心智模型快速上手从 TypeScript 到 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.tree1include \/mol/offline/install2include \/bog/builderui/theme.css3deploy \/bog/smalljs/assets

指令

deploy \/path——把指定的文件或文件夹复制到生产构建输出中。用于部署需要携带、但没有代码导入的静态资源——图片、字体、图标。这里 \/bog/smalljs/assets 会随包发出 logo 以及 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>——把一个命名空间映射到 MAM 从中获取它的 git 仓库,例如 pack mol git \https://github.com/hyoo-ru/mam_mol.git$mol_*$hyoo_* 以及你自己的包正是通过它解析到真实代码的。到底为什么要强制引入?构建器会自动推断依赖,并只打包你的代码实际使用的东西。偶尔你需要一个你的代码并不引用的模块——例如一个把整套组件目录都打包进来、以便它们在运行时存在的应用。requireinclude 恰好覆盖这种情况;它们只在加载顺序上有区别。

它放在哪里

pack 声明属于工作区根目录.meta.tree——那是工作区能拉取的每一个包的注册表。把它们放在那里,而不是子模块里;子模块自己的 meta.tree 只应携带对它而言特有的 require/include/deploy
在 GitHub 上编辑此页这有帮助吗?上一页插件下一页离线
本页内容指令它放在哪里
Type to search the documentation.