我一直在使用环境构建来开发我的Flutter应用程序,我想根据我所做的Web构建类型修改我的index.html文件。
有什么方法可以实现吗? 我有一个env.dart文件,其中包含我需要的变量,但我不知道如何使用我的dart变量修改index.html。
谢谢。
我一直在使用环境构建来开发我的Flutter应用程序,我想根据我所做的Web构建类型修改我的index.html文件。
有什么方法可以实现吗? 我有一个env.dart文件,其中包含我需要的变量,但我不知道如何使用我的dart变量修改index.html。
谢谢。
目前我使用的是一个 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
注意:我目前禁用了空安全性,因为我的项目中的库尚未具备空安全性。