官网地址:https://cli.vuejs.org/zh/
api地址:https://cli.vuejs.org/dev-guide/plugin-api.html
Plugin API
// api.version @vue/cli-service 版本号 5.0.4;
// api.assertVersion
// api.getCwd() /Users/fengtf/project/my-test/vue-test
// api.assertVersion(4) 断言当前版本 传整数
// api.resolve('api') /Users/fengtf/project/my-test/vue-test/api
// api.hasPlugin('eslint') true 判读是否有该插件
// api.registerCommand 设置命令
// api.resolveWebpackConfig() 返回当前环境webpack配置,可以传入配置 解析最终的原始 webpack 配置,将传递给 webpack
// api.resolveChainableWebpackConfig() 解析一个中间可链接的 webpack 配置实例,可以在生成最终的原始 webpack 配置之前对其进行进一步调整。你可以多次调用它来生成基本 webpack 配置的不同分支。
// api.genCacheConfig('@babel/core') {cacheDirectory: '/Users/fengtf/project/my-test/vue-test/node_modules/.cache/@babel/core',cacheIdentifier: '2709e43c'}
version
获取版本信息
api.version
@vue/cli-service 版本号 5.0.4
assertVersion
getCwd
获取当前项目绝对路径
api.getCwd()
/Users/fengtf/project/my-test/vue-test
assertVersion
断言版本
api.assertVersion(4)
断言当前版本 传整数
api.resolve
用于拼接路径
api.resolve('api')
/Users/fengtf/project/my-test/vue-test/api
hasPlugin
判断是否有该插件
api.hasPlugin('eslint')
true
registerCommand
设置指令
resolveWebpackConfig
返回当前环境webpack配置,可以传入配置 解析最终的原始 webpack 配置,将传递给 webpack
resolveChainableWebpackConfig
解析一个中间可链接的 webpack 配置实例,可以在生成最终的原始 webpack 配置之前对其进行进一步调整。你可以多次调用它来生成基本 webpack 配置的不同分支
genCacheConfig
获取包的混存信息
api.genCacheConfig('@babel/core')
{cacheDirectory: ‘/Users/fengtf/project/my-test/vue-test/node_modules/.cache/@babel/core’,cacheIdentifier: ‘2709e43c’}
Generator API
cliServiceVersion
返回@vue/cli-service版本
api.cliServiceVersion
resolve
api.resolve('api')
/Users/fengtf/project/my-test/vue-test/api
exitLog
打印日志
api.exitLog('完车', 'error')
ERROR test 完成
genJSConfig
生成module.exports 代码
api.genJSConfig({ a: 123 })
module.exports = {a: 123}
++makeJSOnlyValue++
injectImports
向某个文件注入 import
api.injectImports(api.entryFile, `import router from './router'`)
entryFile
获取vue入口文件
api.entryFile
src/main.js