node.js - 在 VueJS 中根据配置在构建时生成代码
问题描述
我有一个带有几个视图的 VueJS/vue-cli 应用程序。我想根据构建时配置启用/禁用一些代码。
这与开发/生产并不严格相关,但例如说我的应用程序有 3 个功能,并且我希望根据我交付产品的人有 2 个不同的构建。
例如,假设我有视图 Foo、Bar 和 Baz:我希望仅在为 Deploy1 构建时在生成的静态文件中具有 Foo 视图,仅在为 Deploy2 构建时才有 Bar,并且我总是希望在每次部署时都看到 Baz。
自然,与 Bar 相关的代码不应包含在 Deploy1 中,因此我不是在谈论运行时检查。
这在概念上类似于#ifdef
宏可以在 C 中执行的操作。如何在 VueJS 和 vue-cli 中获得类似的结果?(还是一般的 NodeJS?)
提前致谢!
解决方案
在我的情况下,我为构建脚本使用了多个入口点:在我的 package.json 中:
"develop:foo": "vue-cli-service build --mode develop --dest dist/foo --target app ---modern src/foo.js",
"develop:bar": "vue-cli-service build --mode develop --dest dist/bar --target app --modern src/bar.js",
现在在 foo.js 和 bar.js 中它非常简单:它相当于你的 main.js,因此你可以在你的应用程序中包含任何插件、组件
在我的情况下,我对应用程序的两个版本使用相同的代码,但它们包含比另一个版本更多的功能,例如,在我的一个版本中,我不包括 websockets,我不包括一些第三方 api .. 。 ETC。
你几乎可以分开任何东西。
我希望能回答你的问题!
推荐阅读
- javascript - BIRT eclipse - 删除列中的重复值 - ROWSPAN
- mysql - MySQL Query 不适用于所有测试用例
- reactjs - react native 中架构 armv7 的 1 个重复符号
- google-chrome - 无法向公众发布 chrome 扩展
- scope - 递归调用的变量是自由的还是绑定的?
- visual-studio-code - VSCode - 是否有任何选项可以替换 vs 代码中单引号内的任何形式的文本?
- python - 在 jupyter notebook 中以原始分辨率显示图像
- python - 生成一个总和为 1 的随机百分比列
- android - 如何在 Recyclerview Android Studio 中滑动两次
- postgresql - 如何使 PL/PGSQL 上的操作在并行线程中工作?