gulp自动添加版本号过程中的一些要点记录

1、打开node_modules\gulp-rev\index.js

第144行 manifest[originalFile] = revisionedFile;
更新为: manifest[originalFile] = originalFile + '?v=' + file.revHash;

 

2、打开node_modules\gulp-rev\nodemodules\rev-path\index.js

10行 return filename + '-' + hash + ext;
更新为: return filename + ext;

 

3、打开node_modules\gulp-rev-collector\index.js

31行 if ( path.basename(json[key]).replace(new RegExp( opts.revSuffix ), '' ) !== path.basename(key) ) {
更新为: if ( path.basename(json[key]).split('?')[0] !== path.basename(key) ) {

 

4、gulp替换aspx文件的链接时,发生乱码,解决如下:

打开node_modules\gulp-rev-collector\index.js,全局搜索mutables.forEach(,将其代码修改为:

mutables.forEach(function (file) {
            if (!file.isNull()) {
                var src = file.contents.toString('utf8');
                changes.forEach(function (r) {
                    src = src.replace(r.regexp, r.replacement);
                });
                //src = "EF BB BF" + src;
                var content = new Buffer(src, "utf8");
                //加一步判断操作,判断是否是带bom的文件
                var bomTag = ["239", "187", "191"];
                if(!(content[0].toString(16).toLowerCase() == "ef" && content[1].toString(16).toLowerCase()=="bb" && content[3].toString(16).toLowerCase()=="bf")){
                    content = Buffer.concat([new Buffer(bomTag), content], content.length + 3);
                }
                file.contents = content;
            }
            this.push(file);
        }, this);

 

posted @ 2016-07-04 14:21  web_liu  阅读(1113)  评论(0编辑  收藏  举报