Grunt wireep プラグインを使用して HTML ページに依存関係の縮小バージョンを挿入することは可能ですか?
1993 次
3 に答える
2
これは、Gruntfile.js 構成の wireep fileTypes 設定をオーバーライドすることで実行できます。
以下は、すべての *.js ファイル名を *.min.js に置き換えます (名前を変更します)。
wiredep: {
task: {
src: [
'public_html/**/*.html', // .html support...
// ...
],
},
fileTypes: {
html: {
block: /(([ \t]*)<!--\s*bower:*(\S*)\s*-->)(\n|\r|.)*?(<!--\s*endbower\s*-->)/gi,
detect: {
js: /<script.*src=['"]([^'"]+)/gi,
css: /<link.*href=['"]([^'"]+)/gi
},
replace: {
js: function(filePath) {
var filePathStrArr = filePath.split('.');
var filePathStr = ''; //filePathStrArr[filePathStrArr.length-2];
if (filePathStrArr[filePathStrArr.length - 2] != 'min') {
filePathStrArr.pop();
filePathStr = filePathStrArr.join('.') + '.min.js';
if(!grunt.file.exists(filePathStr)){
//console.log('warning - file does not exist:'+filePathStr);
filePathStr = filePath; //if the .min.js file does not exist then revert back to original filename
}
} else {
filePathStr = filePath;
}
return '<script src="' + filePathStr + '"></script>';
},
css: '<link rel="stylesheet" href="{{filePath}}" />'
}
}
}
}
これは、すべての JavaScript の場所に *.min.js ファイルがあることを前提としていることに注意してください。
于 2015-12-14T06:50:45.117 に答える
1
現時点では不可能です。
grunt-wiredep の主な用途は、bower の依存関係を簡単に追加することです。
bower ファイルを縮小したい場合は、grunt-useminまたはgrunt-html-buildを使用することをお勧めします。すべての bower 依存関係を 1 つのファイルに縮小できます。
たとえば、grunt-usemin では、これを行う必要があります。
<!-- build:js js/vendor.js -->
<!-- bower:js -->
<!-- endbower -->
<!-- endbuild -->
于 2015-03-05T08:40:31.697 に答える