* 处理并合并已存在的文件的内容 * @param {string}path-文件地址 * @param {Array }data-需要合并的旧数据 *
(path, data)
| 175 | * @param {Array<object>}data-需要合并的旧数据 |
| 176 | * */ |
| 177 | function handleFileData(path, data) { |
| 178 | const fileContent = fs.readFileSync(path).toString(); |
| 179 | const contentRegex = /\{((?:[^{}]*\{[^{}]*\})*[^{}]*?)\}/; |
| 180 | let fileResult = parseRenderString(fileContent.match(contentRegex)[0]); |
| 181 | const interfaceData = handleResolveArray(fileResult, data); // 将已存在的文件数据内容和需要新添加的数据内容合并 |
| 182 | const renderString = renderMustache(interfaceData); |
| 183 | fileResult = fileContent.replace(contentRegex, renderString.match(contentRegex)[0]); // 将正文部分替换成合并的数据部分,非正文部分不变 |
| 184 | return fileResult; |
| 185 | } |
| 186 | /* 生成文件 */ |
| 187 | function writerFile(filePath, renderString) { |
| 188 | fs.writeFile(filePath, renderString, (err) => { |
no test coverage detected