当前位置 : 主页 > 网页制作 > Nodejs >

gruntjs – Grunt wiredep wire可以缩小HTML文件中的版本

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

网友评论