2016-05-29 42 views
1

我对节点真的很陌生,觉得我什么都不懂。我正在观看fs.writeFileSync创建新文件的教程。然而,我的代码不工作,没有文件正在创建 - 有人知道为什么吗?此外,为什么我需要学习节点和模块/创建一个文件使用

var fs=require("fs"); 

?据我所知fs是模块中的一个构建,如果我们需要某些东西,应该有另一个文件导出一些东西(我们需要使用fs模块)?节点是很难理解,并会感谢一些解释!谢谢

var fs=require("fs"); 
fs.writeFileSync("contents.txt","Thats a new file") 
console.log(fs.writeFileSync("contents.txt").toString()); 

回答

3

fs确实是节点内置模块,并且作为其他模块,您必须要求它使用其功能。你所指的文件是内部存在的,所以你不必npm安装它。

而关于你的代码,fs.writeFileSync应该像你使用的那样工作,但是当你试图打印它时,你再次使用了这个函数,这次没有内容,可能导致混淆。 代码,应该很好地工作为:

//Requiring the fs module in order to use it later on 
var fs = require('fs'); 

//Writing "Thats a new file" as text to a new file called "contents.txt" in the same directory as the script file. 
fs.writeFileSync('contents.txt', 'Thats a new file'); 

//If you want to print the file, read it, like so. 
console.log(fs.readFileSync('contents.txt')); 

另外,我觉得你应该继续阅读节点的异步功能,这样你就可以更好地理解这一技术又是什么好。 This是你可以学习的一个网站,但有很多其他好的网站。

+0

感谢它现在的作品,但我很惊讶,只有取出toString()使它的工作。为什么我们在这种情况下需要fs?什么是fs模块和fs.writeFileSync(这是一个fs的方法是正确的?)在这里完全是这样吗?谢谢! – juliascoding

+0

实际上它不只是取出toString(),我叫readFileSync,你叫writeFileSync。 fs是处理文件系统的节点内置模块,writeFileSync同步将内容写入文件。我建议你尝试阅读我附加到我的答案的链接,以更好地理解node.js –