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

一、打开node_modules\gulp-rev\index.jsnode

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

 

二、打开node_modules\gulp-rev\nodemodules\rev-path\index.jsjson

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

 

三、打开node_modules\gulp-rev-collector\index.jsgulp

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

 

四、gulp替换aspx文件的连接时,发生乱码,解决以下:this

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

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);
相关文章
相关标签/搜索