#!/usr/bin/env node const { Command } = require('commander'); const Prompt = require('inquirer'); const Create = require('./command/create'); const program = new Command(); const handleExit = () => { process.exit(); }; const handleError = (e) => { console.error('ERROR! 执行过程中出现错误'); console.error(e); console.log('退出执行...'); process.exit(1); }; process.on('SIGINT', handleExit); process.on('uncaughtException', handleError); const Cli = program.command('tis-cli'); Cli.version(require('../package.json').version).usage(' [options]'); // 选项 const templateOpts = [ { type: 'list', name: 'templateType', message: '模板类型', choices: [ { value: 1, name: 'platform 框架模板' }, { value: 2, name: 'application 应用模板' }, { value: 3, name: 'component 组件库模板' } ] } ]; // 通过模板创建项目 Cli .command('create ') .description('通过选择模板类型,创建新的项目') .action(async (projectName) => { Prompt.prompt(templateOpts).then(result => { // 创建 Create(projectName, result.templateType); }) }); Cli.parse(process.argv)