NodeJS模块帮助生成文件

时间:2013-01-25 03:17:23

标签: javascript node.js scaffolding

我正在寻找一个在我的项目中使用的nodejs模块,它将生成文件和目录。

为了给出一些背景知识,我的节点项目使用了某些用户制作的小部件,每个小部件都有一个非常具体的配置和文件布局。我想要一种为用户生成这些骨架文件的简单方法,使用他们输入的一些信息作为参数

期望的工作流程

$ mymodule make new widget
What kind of widget do you want? (dbquery, htmlquery)
> dbquery
What name do you want to give to your widget?
> samplename
In which directory are your widgets located?
>  /home/name/Code/dashboard/widgets
...generating samplename dbquery widget *(creates a couple of folders and files with some basic content)*
DONE!

$

2 个答案:

答案 0 :(得分:4)

核心fs模块可以创建文件和目录。

使用模块

var fs = require('fs');

创建文件:

fs.writeFile('message.txt', 'Hello Node', function (err) {
  if (err) throw err;
  console.log('It\'s saved!');
});

创建目录:

fs.mkdir('test', function(err) {
  console.log('done');
});

另一个很酷的模块是mkdirp。像mkdir -p一样工作。您的骨架文件的内容可以存储在js变量/字符串中,然后写入用户的文件,或者您可以使用一些虚拟文件并从那里读取内容:

fs.readFile('/widget/layout.conf', function (err, data) {
  if (err) throw err;
  console.log(data);
});

答案 1 :(得分:0)

我开始了一个类似于你一直要求的项目。它是一个Node.js模块,可以全局安装,基于GitHub存储库来构建模块和/或应用程序。

有关详细信息,请参阅nudo