美文网首页
构建Node.js脚手架

构建Node.js脚手架

作者: 袁俊亮技术博客 | 来源:发表于2018-11-02 10:15 被阅读39次

构建Node.js脚手架

前言

像我们熟悉的 vue-cli,react-native-cli 等脚手架,只需要输入简单的命令 vue init webpack project,即可快速帮我们生成一个初始项目。在实际工作中,我们可以定制一个属于自己的脚手架,来提高自己的工作效率。

脚手架的原理

generators是yeoman生态系统的积木,通过yo命令运行而为终端用户生产文件,yeoman-generator本质上是一个有着完整项目结构的模板 , yo根据用户选择不同的generator生成不同的项目。

imweb-cli也是一个以模板为核心的脚手架, 通过定制不同的模板, 可以实现初始化项目以及为已有项目添加符合规范的文件片段,这一点在新建页面的时候特别有用。 想了解的同学可以访问(https://www.npmjs.com/package/imweb-cli)

第三方库

  • commander.js,可以自动的解析命令和参数,用于处理用户输入的命令。
  • download-git-repo,下载并提取 git 仓库,用于下载项目模板。
  • Inquirer.js,通用的命令行用户界面集合,用于和用户进行交互。
  • handlebars.js,模板引擎,将用户提交的信息动态填充到文件中。
  • ora,下载过程久的话,可以用于显示下载中的动画效果。
  • chalk,可以给终端的字体加上颜色。
  • log-symbols,可以在终端上显示出 √ 或 × 等的图标。

初始化项目

  • create-demo为例

  • 处理命令行

{
  "name": "create-demo",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "bin": "./bin/index.js",   // 在这里加入构建工程入口文件
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}
  • 下载模板

./bin/index.js文件

#!/usr/bin/env node  // 注意,这一句很关键,一定要加上
const program = require('commander');
const download = require('download-git-repo');
const ora = require('ora');
const chalk = require('chalk');
const symbols = require('log-symbols');

const spinner = ora('start create fibos dapp')

program.version('1.0.0', '-v, --version')
       .command('init <name>')
       .action((name) => {
          spinner.start()
          download('direct:https://github.com/yuanjunliang/create-demo.git', 'test/tmp', {clone: true}, (err) => {
              if(err){
                spinner.fail('create fibos dapp failed')
              }else{
                spinner.succeed('create fibos dapp success')
              }
          })
       });
program.parse(process.argv);

把项目发布到npm,然后npm install create-demo -g全局安装。就可以通过下列命令创建一个项目了

create-demo init project_name

参考文档

相关文章

  • 构建Node.js脚手架

    构建Node.js脚手架 前言 像我们熟悉的 vue-cli,react-native-cli 等脚手架,只需要输...

  • Vue+Cordova环境搭建

    1、安装node.js 2、安装vue-cli脚手架构建工具 3、用vue-cli构建项目 4、运行vue项目 5...

  • VUE2.0

    项目开始: node.js环境(npm包管理器) vue-cli 脚手架构建工具 cnpm npm的淘宝镜像 安装...

  • 初始vue2.0

    项目开始: node.js环境(npm包管理器) vue-cli 脚手架构建工具 cnpm npm的淘宝镜像 安装...

  • vue-cli4搭建项目+配置+启动

    一、安装node.js 二、安装cnpm 三、安装vue-cli4脚手架构建工具 四、创建项目 package.j...

  • 如何运行vue项目

    首先,列出来我们需要的东西: node.js环境(npm包管理器) vue-cli 脚手架构建工具 cnpm np...

  • vue.js2.0基础 --- 入门

    步骤: 一、node.js环境(npm包管理器) 二、安装cnpm 三、安装vue-cli脚手架构建工具 四、用v...

  • 运行vue项目的步骤

    首先,列出来我们需要的东西: node.js环境(npm包管理器) vue-cli 脚手架构建工具 cnpm n...

  • 第一个vue程序

    首先,列出来我们需要的东西: node.js环境(npm包管理器) vue-cli 脚手架构建工具 cnpm np...

  • 微信小程序mpvue+Vant Weapp初始化

    准备工作: 1.安装Node.js nodejs官网 2.安装淘宝镜像cnpm 3.安装vue-cli脚手架构建...

网友评论

      本文标题:构建Node.js脚手架

      本文链接:https://www.haomeiwen.com/subject/wreqxqtx.html