是否可以使用Grunt wiredep插件在 HTML页面中注入缩小版本的依赖项? 这可以通过覆盖Gruntfile.js配置中的wiredep fileTypes设置来完成. 以下内容将所有* .js文件名替换(重命名)为* .min.js: wired
以下内容将所有* .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文件.