用node.js的读、写文件完成使用A文件里的一些值去修改B文件

// 使用 require 方法加载 fs 核心模块
var fs = require('fs')
var path = require('path');

// 读取文件
// 第一个参数就是要读取的文件路径
// 第二个参数是一个回调函数
//
//        成功
//          data 数据
//          error null
//        失败
//          data undefined没有数据
//          error 错误对象
let costumesArr = [];
fs.readFile(path.join(__dirname, "./sprites.json"), function (error, data) {
  if (error) {
     // 在这里就可以通过判断 error 来确认是否有错误发生
    console.log('读取文件失败了', error)
  } else {
    // gtArr = data.filter(ele => ele.tags.includes('gaotu'));
    // console.log(Array.isArray(data));
    // console.log(JSON.parse(data));
    const dataJson = JSON.parse(data);
    console.log(Array.isArray(dataJson));
    gtArr = dataJson.filter(ele => ele.tags.includes('gaotu'));
    gtArr.forEach(element => {
        costumesArr.push(...element.costumes);
    });
    costumesArr.forEach(item => item.tags = ["gaotu"]);
    // console.log(costumesArr);

    fs.readFile(path.join(__dirname, "./costumes.json"), function (error, costumeData) {
        if (error) {
           // 在这里就可以通过判断 error 来确认是否有错误发生
            console.log('读取文件失败了', error)
        } else {
            let costumeJson = JSON.parse(costumeData);
            costumeJson.unshift(...costumesArr);

            console.log(costumeJson);

            fs.writeFile(path.join(__dirname, "./costumes.json"), JSON.stringify(costumeJson), function (error) {
                if (error) {
                    console.log('写入失败')
                } else {
                    console.log('写入成功了')
                }
            })
        }
      })
  }
})

张长长
67 声望4 粉丝