使用fs.writeFile将javascript代码写入js
Write javascript code into a js using fs.writeFile
我正在尝试使用 Nodejs fs 模块将 JavaScript 代码写入 js。我设法写了一个 json 文件,但可以全神贯注地思考如何向它写入 JavaScript。
fs.writeFile("config.json", JSON.stringify({name: 'adman'tag: 'batsman',age: 25}), 'utf8',{ flag: "wx" }, function(err) {
if (err) {
return console.log(err);
}
console.log("The file was saved!");
});
我需要用以下数据创建一个 .js 文件
const cricketers = [
{
name: 'adman',
tag: 'batsman',
age: 25
},
// other objects
]
module.exports = cricketers ;
使用字符串模板
const data = `const cricketers = ${JSON.stringify(yourArray)};
module.exports = cricketers;
`
其中 yourArray
是一个对象数组
两件事:
- 如果你想做的就是能够做到
let someData = require('someFile.json');
Nodejs 已经支持需要 json 文件并将它们视为 Js 对象。
- 否则我不知道有哪个图书馆可以为您做这件事,但是...
你可以自己做。 fs.writeFile 函数接受一个字符串,因此您只需生成要写入文件的字符串即可。
let someData = [{name: 'adman', tag: 'batsman', age: 25}];
let jsonData = JSON.stringify(someData);
let codeStr = `const cricketers = ${jsonData}; module.exports = cricketers;`;
fs.writeFile("someFile.js", codeStr, 'utf8',{ flag: "wx" }, function(err) {
if (err) {
return console.log(err);
}
console.log("The file was saved!");
});
显然这只适用于非常具体的用例,但关键是它可以通过简单(或复杂...)的字符串操作来完成。
我正在尝试使用 Nodejs fs 模块将 JavaScript 代码写入 js。我设法写了一个 json 文件,但可以全神贯注地思考如何向它写入 JavaScript。
fs.writeFile("config.json", JSON.stringify({name: 'adman'tag: 'batsman',age: 25}), 'utf8',{ flag: "wx" }, function(err) {
if (err) {
return console.log(err);
}
console.log("The file was saved!");
});
我需要用以下数据创建一个 .js 文件
const cricketers = [
{
name: 'adman',
tag: 'batsman',
age: 25
},
// other objects
]
module.exports = cricketers ;
使用字符串模板
const data = `const cricketers = ${JSON.stringify(yourArray)};
module.exports = cricketers;
`
其中 yourArray
是一个对象数组
两件事:
- 如果你想做的就是能够做到
let someData = require('someFile.json');
Nodejs 已经支持需要 json 文件并将它们视为 Js 对象。 - 否则我不知道有哪个图书馆可以为您做这件事,但是...
你可以自己做。 fs.writeFile 函数接受一个字符串,因此您只需生成要写入文件的字符串即可。
let someData = [{name: 'adman', tag: 'batsman', age: 25}];
let jsonData = JSON.stringify(someData);
let codeStr = `const cricketers = ${jsonData}; module.exports = cricketers;`;
fs.writeFile("someFile.js", codeStr, 'utf8',{ flag: "wx" }, function(err) {
if (err) {
return console.log(err);
}
console.log("The file was saved!");
});
显然这只适用于非常具体的用例,但关键是它可以通过简单(或复杂...)的字符串操作来完成。