代碼混淆是一種代碼保護機制可以保護js邏輯不被破譯。項目一般要經過三個階段開發、測試、部署上線。在部署的時候我們會對代碼進行壓縮和整合。代碼混淆一般是通過正則替換實現或者語法樹替換實現。代碼混淆後安全級別有顯著提升。但是這也讓我們在測試環境測試的時候很難跟蹤問題。
我們要做的事其實可以理解爲,針對不同的運行環境產出不同的代碼。
我們可以通過BOI來處理(boi是一款開源的前端工程化方案,對其源碼感興趣的可以移步https://gitbub.com/boijs/boi)。
1、在package.json中引入
"bin": {
"boi":"bin/boi.js"
}
2、具體配置
在這裏我們根據前文說的階段將環境配置爲三個不同的api,開發(dev),測試(testing),生產(prod),這樣可以保證整個開發流程的嚴謹性,打造一種類似沙箱的獨立作業環境。
因爲我們只在測試環境的打包時,不做代碼混淆,所以我們只配置在testing下
boi.spec('js',{
testing:{
uglify:false
}
});
其中用到的boi.spec是BOI提供的配置api
3、開發完成後,運行以下命令構建測試環境的代碼
boi build --env testing
好啦~以上三步就OK了。有問題請留言哦~