/* eslint-disable */ var fs = require('fs') var path = require('path') var config = { projectPath: path.resolve(__dirname), filePath: '/datareport/', templateName: 'index.html', urlLocal: '/jyapp/local', output: [ { origin: 'res://app-i1.jianyu360.com', fileName: 'index_i1.html' }, { origin: 'res://app2-jytest.jianyu360.cn', fileName: 'index_app2.html' } ] } fs.readFile(`${config.projectPath}${config.filePath}${config.templateName}`, 'utf8', function(err, files) { config.output.forEach(function (item, index) { let replaced = files.replace(new RegExp(`${config.filePath}`, 'g'), `${item.origin}${config.filePath}`) // 在文件中部分 标签 前加换行,避免被正则贪婪匹配全部匹配到 replaced = replaced.replace(/(<[a-z])/g, `\n$1`) replaced = replaced.replace(/script(.*?)src=\/(.*)\/(.*).min.js/g, `script$1src=${item.origin}${config.urlLocal}/$3.min.js`) // 将前面添加的换行去掉 replaced = replaced.replace(/\n/g, '') fs.writeFileSync(`${config.projectPath}${config.filePath}${item.fileName}`, replaced, 'utf8', function (err) { if (err) return console.log(err) }) }) })