1 | import ora from 'ora'
|
2 | import inquirer from 'inquirer'
|
3 | import downLoadGit from 'download-git-repo'
|
4 |
|
5 | let create = async () => {
|
6 | let loading = ora('模板拉取中...')
|
7 | let answer = await inquirer.prompt([
|
8 | {
|
9 | type: 'input',
|
10 | name: 'projectName',
|
11 | message:'项目名称',
|
12 | default:'d2-admin-demo'
|
13 | },
|
14 | {
|
15 | type: 'list',
|
16 | name: 'projectType',
|
17 | message: '项目模板',
|
18 | choices: ['完整版(包含所有插件和示例代码)', '简化版(不包含非必须插件和组件,保留所有系统功能)'],
|
19 | default: '完整版'
|
20 | }
|
21 | ])
|
22 |
|
23 | let project = answer.projectName
|
24 | let templateName = answer.projectType === '完整版' ? 'd2-projects/d2-admin' : 'd2-projects/d2-admin-start-kit'
|
25 | loading.start()
|
26 |
|
27 | downLoadGit(templateName, process.cwd() + '/' + project, (err) => {
|
28 | if (err) {
|
29 | console.log(err)
|
30 | return
|
31 | }
|
32 | console.log(process.cwd()+'/'+project)
|
33 | loading.succeed()
|
34 | console.log('')
|
35 | console.log('模板拉取成功!')
|
36 | console.log('')
|
37 | console.log('请使用以下命令启动项目:')
|
38 | console.group('')
|
39 | console.log(`cd ${project}`)
|
40 | console.log('npm install')
|
41 | console.log('npm run serve')
|
42 | })
|
43 | }
|
44 |
|
45 | export default create
|