很多開源類庫習(xí)慣在代碼中使用注釋的方式標(biāo)注版權(quán)信息,比如:
/*!
jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license
(special comments)
*/
/*
normal comments
*/
通常版權(quán)注釋會以 /*! 開頭,或者包含 @license,@preserve。如果開發(fā)者希望在自己壓縮后的代碼中保留版權(quán)信息,或者在項目中使用了保留版權(quán)信息的第三方開源代碼,spm 打包壓縮之后,這些特殊注釋應(yīng)該被保留在壓縮后的代碼中,而不應(yīng)該刪除。
目前 spm 的處理方式是:CSS 壓縮時默認(rèn)保留特殊注釋,而 JS 壓縮時則會刪除所有注釋,分別是 gulp-cssmin 和 gulp-uglify 的默認(rèn)處理方式。
gulp-uglify 選項:刪除所有注釋(默認(rèn))、保留特殊注釋、保留所有注釋、回調(diào)函數(shù)
gulp-cssmin 選項:保留特殊注釋(默認(rèn))、刪除特殊注釋、保留第一條特殊注釋
spm-build 可以提供一個參數(shù),控制是否刪除特殊注釋,默認(rèn)為保留特殊注釋。
可以在 package.json 里配的,比如:
{
"spm": {
"cssmin": {},
"uglify": {}
}
}