我试图将Browserify整合到Cordova中。我做了以下事情:
npm install -g browserify
mv www/js/index.js .
browserify index.js -o www/js/bundle.js
<hook src="appBeforeBuild.sh" type="before_build" />
这个可能是将Browserify集成到Cordova的好指南,但遗憾的是它无法正常工作,因为编辑'index.js'不会触发重新编译。
请有人解释如何将index.js设置为文件 检查构建依赖项并触发 before_build 挂钩?
答案 0 :(得分:0)
我的问题中的检查清单适合将Browserify集成到Cordova中,但应更正 [before_build] 脚本。以下是适用于Mac OSX的脚本:
文件:appBeforeBuild.sh
echo "[before_build] Start"
b=$(stat -f "%Sm" -t "%Y%m%dT%H%M%S" index.js)
if [ -f timestamp_indexjs.txt ]; then
a=$(cat timestamp_indexjs.txt)
if [ $a == $b ]; then
echo "- No change in index.js"
else
echo "- Calling Browserify (timestamp was changed)"
echo $b>timestamp_indexjs.txt
browserify index.js -o www/js/bundle.js
fi
else
echo "- Calling Browserify (First run, no timestamp)"
echo $b>timestamp_indexjs.txt
browserify index.js -o www/js/bundle.js
fi
echo "[before_build] End"
此文件必须具有执行权限:
chmod +x appBeforeBuild.sh
此脚本中的想法是确保仅在 index.js 发生更改时才调用Browserify。
TIPS:
-d
选项运行,如cordova -d build android