是否可以使用Node.JS中的文件系统将代码附加到JavaScript文件中?
我正在创建一个生成器,它应该根据用户的选择将某些代码行插入到.JS文件中。根据我使用Node.JS文件系统的经验,我只写过.txt或.json文件 如何将此代码追加到文件中?这可能吗?我应该使用特定的编码吗 更新 我通过设置如下应用程序进行了一些轻量级实验:是否可以使用Node.JS中的文件系统将代码附加到JavaScript文件中?,javascript,node.js,filesystems,code-generation,fs,Javascript,Node.js,Filesystems,Code Generation,Fs,我正在创建一个生成器,它应该根据用户的选择将某些代码行插入到.JS文件中。根据我使用Node.JS文件系统的经验,我只写过.txt或.json文件 如何将此代码追加到文件中?这可能吗?我应该使用特定的编码吗 更新 我通过设置如下应用程序进行了一些轻量级实验: -app.js -index.js -snippet.js -index.html 在app.js中,我有以下代码 const fs = require("fs"); fs.readFile("snippet.js", functi
-app.js
-index.js
-snippet.js
-index.html
在app.js中,我有以下代码
const fs = require("fs");
fs.readFile("snippet.js", function read(err, data) {
if (err) {
throw err;
}
var file_content = data.toString();
fs.writeFile("index.js", file_content, (err)=>{
if (err) throw err;
console.log("File Written");
});
});
然后我从snippet.js
中获取一个简单的警报(“文件系统插入”)
,并将其写入index.js
,一旦index.html
按预期加载了警报函数。所以是的,可以使用文件系统传递javascript代码
我想我的下一步将是找出如何在不使用模板引擎文件扩展名的情况下对其进行模板化 为此,您可以使用模板引擎 例如,看一看 您可以有这样的模板(
file.template
):
然后使用Mustache编译模板,用所需的JS代码填充{{optionalCode}}
,并获得最终的JS文件
阅读和的小胡子文档
还有其他模板库。查看以下链接了解更多信息:
文本文件就是文本文件。去吧。你能发布一些代码吗?@doublesharp谢谢你的反馈。代码发布。这很酷,我有点想使用这样的解决方案,除了不强迫最终用户使用模板引擎文件扩展名,比如
.template
。我想保留扩展名为.js
。但本质上,我想用文件系统创建的内容与您描述的非常相似。@SavSamoylov使用.template
只是为了表明它不是一个普通的JavaScript文件。您可以对模板文件自由使用任何扩展名(包括.js
)。谢谢@KayvanMazaheri。
let greetings = 'hello world!'
{{ optionalCode }}
console.log(greetings)