vueCLI

  • 概念
    用于生成项目文件体系搭建和用户交互
交互式配置开发

vue init webpack demo-app

  • 1.1下载模板
  • 1.2提问
  • 1.3元数据配置
vuecli 2.x
// bin/vue
//手册指引
const program = require('commander')
// 提供的api,也就是提示
// init , list, bulid, create

// logger  
// chalk  高亮
// 结束编译 process.exit(1)

// 主文件 vue-init
const download = require('download-git-repo')
// 命令行处理工具
const program = require('commander')
// 检测路径是否存在
const exists = require('fs').existsSync
// 命令行加载效果
const ora = require('ora')
// 获取用户根目录
const home = require('user-home')
// / ~ ./ @ 绝对路径替换成波浪号
const tildify = require('tildify')
// 用户与脚本命令行交互
const inquirer = require('inquirer')
// rm -rf 
const rm = require('rimraf').sync

// 统一打印机制
const logger = require('../lib/logger')
// 根据模板构建项目
const generate = require('../lib/generate')
// 检查当前脚手架
const checkVersion = require('../lib/check-verison')
// 告警
const warings = require('../lib/warnings')
// 路径处理
const localPath = require('../lib/local-path')
// 检测本地路径是否正确
const isLocalPath = localPath.isLocalPath
// 获取本地模板路径
const getTemplatePath = localPath.getTemplatePath
// 面试题: 如何使用本地离线下载好的模板或者自己预设的模板 --offline

// program --> 对应的command 用户输入的东西
let template = program.args[0] // 表示模板名称
// 判断是否有斜杠,其实是判断路径层级
const asSlash = template.indexOf('/') > -1
// 获取项目名称
const rawName = program.args[1]
// 判断是否为空或者输入· 就表示以当前目录为项目名称
const inPlace = !rawName || rawName == ""
// program.offline 判断用户参数是否包含--offline

// run()
// 确认本地路径是否存在

// generate.js
// 静态网页文件生成器
const metalsmith = require('metalsmith')
// 模板引擎
const Handlebars = require('handlebars')
// 多个条件匹配
const multimatch = require('multimatch')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

web:小源

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值