vue-cli 3.0脚手架与vux的配合使用
在最近的项目中,引用了vux,在可拓展性以及复用性,都算是比较优秀的框架了。但是美中不足的是对于vux在对于vue-cli3.0的跟进还没有同步 需要自己做下修改,同比 有赞的vant 以及 iview 都有了对于vue-cli3.0的兼容了
现记录如下:
一、安装vue-cli 3
首先官方文档:https://cli.vuejs.org/
官方文档包含了很多的内容,很靠谱,比较全面,第一步当然是把官方文档看一遍。
安装
Node 版本要求
Vue CLI 需要 Node.js 8.9 或更高版本 (推荐LTS)。你可以使用 nvm 或 nvm-windows在同一台电脑中管理多个 Node 版本。
可以使用下列任一命令安装这个新的包:
npm install -g @vue/cli # OR yarn global add @vue/cli
创建项目
运行以下命令来创建一个新项目. 选择babel,eslint 还有router 等等!
vue create demo
安装之后执行就可以使用了
cd 项目名
npm run serve
二、配置vux
在网上搜了会,发现几乎都是vue-cli旧版的配置方法,有一些已经不能用了,在这里整理下正确的配置方法
安装各插件
1、在项目里面安装vux
npm install vux --save
2、安装vux-loader(必须安装)
npm install vux-loader --save-dev
3、安装less-loader(这个是用以正确编译less源码,否则会出现 ' Cannot GET / ')
npm install less less-loader --save-dev
4、安装yaml-loader (以正确进行语言文件读取)
npm install yaml-loader --save-dev
配置vux环境
这里注意由于vue-cli3使用的是webpack4而且更新过vue-loader,所以vux使用起来会存在一些兼容的问题,这里需要额外配置一下。
官方更新过vue/cli3.x 的vue-loader,正常配置会导致加载错误。所以需要手动指定vue-loader的版本来解决加载问题。
yarn add vue-loader@14.2.2 -D or npm install vue-loader@14.2.2 -D
在packageage同级目录下新建一个文件vue.config.js
vue-cli3.x的一些服务配置整个的结构都迁移到CLI Service里面了,对于一些基础配置和一些扩展配置提供了vue.config.js。那么问题来了,对于这么一个入口,肯定不能直接按照vux-loader的方法直接在配置文件置空webpackConfig了。而单独组件引用的话又被告知 使用错误(事实上都直接报错了,因为没有正确对于组件的load)。
参照vux-loader文档的配置说明,那么就是merge以下vux-loader的配置到webpackConfig里面呗,接下来就简单了。我们只需要在vue.config.js文件中的webpackConfig的配置中mergevux-loader就行了
根据官方文档,在文件里加入以下内容:
module.exports = { configureWebpack: config => { require('vux-loader').merge(config, { options: {}, plugins: ['vux-ui'] }) } }
目前就可以使用了, 不过到目前为止 还是有些小问题 提的issue 还没有回应 如果采用解构的方式在main.js 引用 并不能成功引用
可以采用这种方式(示例)
import Popup from 'vux/src/components/popup' import Alert from 'vux/src/components/alert' import Confirm from 'vux/src/components/confirm' import Cell from 'vux/src/components/cell'
ok 就酱紫~~~