是否可以设置一个可以具有多个相互独立的 Web 组件的 StencilJS 项目?
截至目前,我可以看到有 2 个种子项目可分别用于开发组件和应用程序。
我有一个用例,我们想在一个地方管理所有组件。我们希望生成/构建独立的组件脚本,但不希望每个组件都有多个 package.json 和构建过程。
是否可以设置一个可以具有多个相互独立的 Web 组件的 StencilJS 项目?
截至目前,我可以看到有 2 个种子项目可分别用于开发组件和应用程序。
我有一个用例,我们想在一个地方管理所有组件。我们希望生成/构建独立的组件脚本,但不希望每个组件都有多个 package.json 和构建过程。
最新版本的 StencilJS 支持特定于组件的捆绑包:
自定义元素捆绑包。您可以配置stencil.config.ts
生成这种捆绑包以及组合捆绑包。
请注意:
您仍然会将所有组件运送到单个 npm 模块中,但您的消费者现在可以选择仅注册他们感兴趣的组件。
如果您希望使用单个源代码仓库拥有单独的节点模块,您应该使用Lerna或yarn 2 工作区设置一个 monorepo
通常的做法是拥有一个包含许多子目录的单一仓库,每个子目录都有一个组件。每个组件都有完整的构建过程,package.json
但lerna用于运行一个命令来一次构建/测试/发布所有组件。