vue-cli 源码阅读

依赖包简述

rimraf 多端删除命令

主要实现unix中的命令 rm -rf 方便兼容在window mac linux里跑

github地址: https://github.com/isaacs/rimraf#readme

semver 版本号处理

const semver = require('semver')

semver.valid('1.2.3') // '1.2.3'
semver.valid('a.b.c') // null
semver.clean('  =v1.2.3   ') // '1.2.3'
semver.satisfies('1.2.3', '1.x || >=2.5.0 || 5.0.0 - 7.2.3') // true
semver.gt('1.2.3', '9.8.7') // false
semver.lt('1.2.3', '9.8.7') // true
semver.valid(semver.coerce('v2')) // '2.0.0'
semver.valid(semver.coerce('42.6.7.9.3-alpha')) // '42.6.7'

看demo就比较好懂了

github地址: https://github.com/npm/node-semver

commander 命令行插件

vue-cli 有非常多的命令行交互

选择的是 commander https://github.com/tj/commander.js

而像webpack使用的是 yargs https://github.com/yargs/yargs

其实非常类似 但是commander 的start多些

学习到的技能

jest设置初始化环境变量

在进行jest测试时 单元测试需要知道当前是测试环境

可在package.json中设置

"jest": {
    "setupFiles": [
        "<rootDir>/scripts/testSetup.js"
    ],        
}

而在/scripts/testSetup.js中设置

process.env.VUE_CLI_TEST = true
© 404mzk all right reserved,powered by Gitbookhttp://blog.404mzk.com 该文件修订时间: 2019-03-01 10:00:19

results matching ""

    No results matching ""