如何创建自定义命令来使用 Node 生成文件?

问题描述 投票:0回答:2

对于我的工作,我们创建了许多小型 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

可以吗?

javascript node.js bash command
2个回答
0
投票

我一直在我的 Express 项目中使用

express-generator

  1. 通过 npm 将生成器安装为全局包

    $ npm install -g express-generator

  2. 创建您的快捷应用程序

    $ 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

如果您不需要任何视图引擎,只需将其删除即可。

  1. 安装依赖项并运行应用程序

    $ npm i && npm start

这将是在

http://localhost:3000/

运行的服务器

更多信息


0
投票

在节点中,您可以使用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");
 }
  
  
  
  

© www.soinside.com 2019 - 2024. All rights reserved.