cjlfastvuecli
Version:
52 lines (51 loc) • 1.77 kB
JavaScript
const program = require('commander')
const {
createProjectAction,
addCpnAction,
addPageAndRoute,
addStoreAction
} = require('./action')
const createCommends = () => {
//创建项目
program
//创建的内容
.command('create <project-name> [others...]')
//描述
.description('clone repository into a folder')
//执行的代码
.action(createProjectAction)
//增加组件
program
//创建的内容
.command('addcpn <name>')
//描述
.description('add a vue component 例如:fastvue addcpn helloworld -d src/components')
//执行的代码 name是我们创建组件时,写的组件名,也是action要求传入的参数
.action((name) => {
addCpnAction(name, program._optionValues.dest || 'src/components')
console.log(`${name}要被创建喽~`);
})
//增加页面
program
//创建的内容
.command('addpage <page>')
//描述
.description('add a vue page and router config ,例如:fastvue addpage Home -d src/pages')
//执行的代码
.action((page) => {
addPageAndRoute(page, program._optionValues.dest || 'src/pages')
console.log(`${page}页面要被创建喽~`);
})
//增加store
program
//创建的内容
.command('addstore <store>')
//描述
.description('add a vue store ,例如:fastvue addstore Home -d store/audio')
//执行的代码
.action((store) => {
addStoreAction(store, program._optionValues.dest || 'src/store/modules')
console.log(`${store}store要被创建喽~`);
})
}
module.exports = createCommends