我一直在使用环境构建的Flutter应用程序,并且我想根据我正在执行的Web构建的类型来修改index.html文件。
有办法吗? 我有一个env.dart,其中包含我需要的变量,但我不知道如何使用我的dart变量修改index.html。
谢谢。
答案 0 :(得分:1)
我目前使用一个,但它是一个 shell 脚本
从您的项目文件夹中创建您将存储 index.html 文件的环境:
mkdir config
cd config
mkdir release
mkdir dev
mkdir uat
然后将不同的 index.html(尤其是 web/ 中的那个)复制到 config/release/config/dev/ 和 config/uat/
cp ../web/index.html release/ && cp ../web/index.html dev/ && cp ../web/index.html uat/
/!\ 备份位于 WEB/INDEX.HTML 中的当前文件
该脚本会将 index.html 从您不同的环境目录直接复制到 web/ 并删除 web/ 中的当前文件。如果您永久删除该文件,我拒绝承担任何责任。你被警告了。
创建脚本文件:
touch run.sh && chmod +x run.sh
把这个脚本复制进去:
cp config/$1/index.html web/index.html && flutter run -d chrome --no-sound-null-safety
并使用 ./run.sh release
、./run.sh dev
或 ./run.sh dev
我还运行此脚本并使用 --dart-define
flutter run --dart-define=MY_ENV_VARIABLE=ITS_VALUE
注意:我目前禁用了空安全,因为我的项目的库还不是空安全。