对于我的工作,我们创建了许多小型 Web 应用程序,使用 NodeJS 作为后端,使用 Angular 作为前端
上述应用程序通常涉及大量 CRUD
使用 Angular,我可以运行:
ng generate component 'component-name'
生成 ts、html、scss 和 spec 文件
我将如何创建一个自定义脚本来在 NodeJS 中执行类似的操作?
目前项目使用ExpressJS和Sequelize,结构如下:
├── src
│ ├── controllers
│ | ├── product.controller.js
│ ├── models
| | ├── product.model.js
│ ├── routes
| | ├── product.routes.js
├── index.js
├── package.json
基本上我想创建一个脚本,在给定名称时生成所有 3 个文件,例如
node generate client
可以吗?
我一直在我的 Express 项目中使用
express-generator
。
通过 npm 将生成器安装为全局包
$ npm install -g express-generator
创建您的快捷应用程序
$ express myapp
这将创建一个名为 myapp 的 Express 应用程序。该应用程序将在当前工作目录中名为 myapp 的文件夹中创建,并且视图引擎将默认设置为 jade。
.
├── app.js
├── bin
│ └── www
├── package.json
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
└── views
├── error.pug
├── index.pug
└── layout.pug
7 directories, 9 files
如果您不需要任何视图引擎,只需将其删除即可。
安装依赖项并运行应用程序
$ npm i && npm start
这将是在
http://localhost:3000/
运行的服务器
在节点中,您可以使用fs库创建文件夹并向其中写入文件。 例如这样,
const fs = require('fs');
const html = `custom starter html script as per your requirement`;
const css = `custom script as per your requirement`;
const js = `custom script as per your requirement`;
const folderName = process.argv[2];
function createFiles() {
try{
if(folderName) {
fs.mkdirSync(`${folderName}`); //creates the folder name with the argument you have provided.
fs.writeFileSync(`${folderName}\\index.html`,html); // writes to the folder you have created with the custom file contents.
}
}catch(e){
console.log(`Error: ${e}`);
}
}
if(folderName){
createFiles();
}else{
console.log("Please enter the folder name");
}