效果先是这样的
在学习vue的时候,以来会让我们使用vue-cli生成一个项目
vue安装了vue-cli-service
执行命令行 vue-cli-service serve
那么问题来了:为什么执行 vue-cli-service就回去找node_module下面的
vue/cli-server/bin/vue-cli-service.js
这是为什么?为什么?为什么?
![](https://img.haomeiwen.com/i3767836/77021b78565dab75.png)
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
问题概括
成员:
组件:component1
我的项目 app1
预期效果:
安装我的component1到app1
之后执行component1的命令
答案:package.json的bin
先看看bin是什么
![](https://img.haomeiwen.com/i3767836/0bf441e42a2468aa.png)
也就是说:如果我们事先在component1的package.json的bin中配置好{key:value}
那么在安装component1组件的时候,npm会为什么在node_module/.bin目录下安装一个软连接
这个软连接是你指定的value,你通过你指定的key来运行这个连接
vue分析
首先我们安装组件
"@vue/cli-service": "^3.3.0",
![](https://img.haomeiwen.com/i3767836/6736d581d40c2b43.png)
看看@vue/cli-service的package.json的bin是什么东西吧
"bin": {
"vue-cli-service": "bin/vue-cli-service.js"
},
也就是在安装@vue/cli-service这个组件的时候,npm为我们在./bin目录下面放了一个
叫做"vue-cli-service"的软连接
所以在这个目录下面执行命令行‘vue-cli-service’,就会执行“bin/vue-cli-service.js”文件
end
网友评论