vue-cli-service原理研究,以及其与webpack-dev-service的区别
<!--关于vue-cli-service可以看看这篇文章讲的很不错https://segmentfault.com/a/11900000203387711.process.env.VUE_CLI_CONTEXT是什么,好像是webpack中的context 看看这篇https://forum.vuejs.org/t/vue-cli-3-0-context/499532.minimist这个
·
<!--
关于vue-cli-service可以看看这篇文章讲的很不错
https://segmentfault.com/a/1190000020338771
1.process.env.VUE_CLI_CONTEXT是什么,好像是webpack中的context 看看这篇https://forum.vuejs.org/t/vue-cli-3-0-context/49953
2.minimist这个包的作用
这个是命令行解析工具,那么乍一听这是个啥,其实这个东西用的地方无处不在,只要是有命令行的地方几乎都会用到命令行解析工具
具体可以看看这几篇文章 https://www.cnblogs.com/freshchen/p/11660046.html
比如你打vue -help就会出来一大堆帮助,你vue项目,的--progress --color ,npm -save啥的,linix里的ls啥的命令git bash啥的,数据库里selct *啥的 这些输入运行,你一定有个疑问,为啥要这么输,谁规定的格式 为啥这么输入就有作用 就会反馈,是哪里做了这部分的处理逻辑
这就是命令行解析工具的作用,他可以定义命令行的各种表示,可以读取,可以展示等等,明白我意思吗
而这里vue-cli-service弄这个minimist的作用好像主要是解析参数,读取和赋值啥的
------就这个命令行工具,就让我体会到了自己一直在上层做开发,这种底层的东西我根本就没管过,没有深究,现在一看
觉得底层就是吊啊,所以c啥的就那么吊
3.vue的插件机制是啥
vue-cli-service 里面的插件部分不是很懂
然后刚刚看到了里面的resolceClientEnv.js文件 //被爷找到了,不是APP_VUE*这个开头的全局变量就会被过滤掉
然后看到了loadEnv方法:载环境变量,从项目根目录下的.env.(mode)文件读取环境变量,并写入到process.env(声明环境变量必须是VUE_APP_*,不然会被过滤掉)
const env = dotenv.config({ path: envPath, debug: process.env.DEBUG })
dotenv这个包用来读取项目路径下的.env.develpment啥的文件里的环境变量,VUE_APP_*开头的这种
所以说到底,vue-cli-sevice还是基于webpack-dev-server的
而webpack-dev-server又是基于nodejs的express框架开的服务器
-->
更多推荐
已为社区贡献4条内容
所有评论(0)