1趟畏、為什么要清除console信息
作為開發(fā)人員,難免不了要打log信息調(diào)試程序滩租,有時(shí)候我們一個(gè)模塊可能要打十多個(gè)log赋秀,然后每個(gè)log用不同的字符串標(biāo)識,由于每次打的log的可能下次調(diào)試的時(shí)候還有用持际,所以我們不會(huì)去刪除它沃琅,(ps:我以前也是認(rèn)為把log清除了不就不用這么麻煩了?可是當(dāng)我遇到一個(gè)新的bug的時(shí)候蜘欲,我又要把上次刪除的console又加上益眉,這樣反反復(fù)復(fù)來了很多次,我還是決定不清除console了)然而如果你打包發(fā)布的產(chǎn)品還有console信息的話,總感覺有點(diǎn)怪怪的郭脂,如果console里面還有報(bào)錯(cuò)年碘,那就。展鸡。屿衅。
2、利用angular-cli區(qū)分dev模式和prod模式
利用angular-cli莹弊,我們很容易知道當(dāng)前代碼環(huán)境是處于dev模式涤久,還是prod模式,在angular-cli腳手架的開發(fā)環(huán)境下有一個(gè)environments文件夾忍弛,里面有一個(gè)environment.ts文件响迂,里面有個(gè)對象用于標(biāo)識是dev模式,還是prod模式
angular-cli開發(fā)環(huán)境src目錄下的environments文件夾:
environment.ts文件內(nèi)容:
上面的注釋大概就是說:當(dāng)你執(zhí)行
ng build --env=prod
命令進(jìn)行項(xiàng)目打包時(shí)细疚,environment.prod.ts的內(nèi)容會(huì)替代environment.ts的內(nèi)容蔗彤,具體誰替換誰,我們可以去angular-cli.json里面進(jìn)行配置
angular-cli.json文件配置:
3疯兼、如何在prod模式下清除console
由于main.ts是angular程序的啟動(dòng)入門然遏,所以我們只需要在這個(gè)文件里面判斷是dev模式還是prod模式,如果是prod模式吧彪,我們就重寫console待侵,然后prod模式下的代碼就不會(huì)打印console信息了,具體實(shí)現(xiàn)如下: