NodeJS fs.writeSync在变量中插入文本

nle07wnf  于 2022-11-03  发布在  Node.js
关注(0)|答案(1)|浏览(101)

你好,我正在尝试将我的文本插入到我的配置文件的var目录中,可以吗?我尝试使用位置,但位置的问题是,如果我的文本很长,它不适合

const defaultFolderName = fs.readFileSync('config.js', {encoding: 'utf8'});

    const folderName = process.argv[2] || defaultFolderName;
    const fd = fs.openSync('config.js', 'r+');

    const PathName = folderName;

    const data = `${PathName}', `;

    fs.writeSync(fd, data, 246, 'utf8');

config.js

const config = {

  Directory: 'insertText',  

  movie: 'test',  

};

export default config;
zzwlnbp8

zzwlnbp81#

这看起来很容易被误导,但是您可以使用正则表达式替换来实现。

if (process.argv[2]) {
    const oldConfig = fs.readFileSync('config.js', {encoding: 'utf8'});
    newConfig = oldConfig.replace(/Directory:\s*'.*',/, `Directory: '${process.argv}',`);
    fs.writeFileSync('config.js', newConfig, {encoding: 'utf8'});
}

相关问题