我现在正在处理由 ui5.yaml 和 @ui5/cli 管理的 sapui5 项目。我不知道如何使用 .env 之类的东西来控制一些变量的值,这些值可以在 dev env 和 pro env 之间切换。
我找到了一种解决方法,它创建一个 env.js 并将其包含到控制器文件中。所以我可以通过编辑 env.js 文件来改变一些值。现在我想让它更方便。
我使用@ui5/cli ui5 run build 来构建项目。并且有自定义任务的配置。还有一个名为 webide-extension-task-copyFile 的任务,用于复制 /xs-app.json。
现在我创建了三个名为 env-dev.js env-pro.js env.js 的 env 文件。我想在构建之前将 env-pro 复制到 env.js 中。并在我运行 ui5 run serve 时将 env-dev 复制到 env.js 中。
我在 ui5.yaml 中有这样的配置
specVersion: '2.4'
metadata:
name: ui
type: application
framework:
name: SAPUI5
....
customTasks:
....
- name: webide-extension-task-copyFile
afterTask: webide-extension-task-resources
configuration:
srcFile: '/webapp/env/env-pro.js'
destFile: '/webapp/env/env.js'
我确定任务已被触发,但文件内容尚未更改。所以有人可以帮助我,或者有另一个关于在 ui5 项目中使用 env 的想法或成功示例。
谢谢 :)