1. 采用 vux2 模板
1 | npm install vue-cli -g # 如果还没安装 |
建议在安装的时候询问是否安装elsint,选择Y,如果想关闭在config/index.js里把 useEslint 改为false。配合vscode的eslint校验很有用。 参考链接
2. 安装sass-loader
1 | cnpm i node-sass -D |
3.引入flex.js
1 | <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> |
4.配置路由
views文件夹存放页面组件
- 在router目录下新建两个文件,==_import_development.js== 和 ==_import_production.js==,
1 | //_import_development.js -> |
5.配置开发环境和生产环境api
5.1 配置不同环境的请求网址
- 在config文件夹下 dev.env.js 里添加
BASE_API: '"https://api-prod"'
- 在config文件夹下 prod.env.js 里添加
BASE_API: '"https://api-prod"'
5.2 在src目录下新建一个api文件夹,写api,方便后期维护
5.3 proxyTable解决跨域
在/config/index.js文件dev.proxyTable里配置index.js,
1 | proxyTable: { |
同时将 config文件夹下 dev.env.js 里 BASE_API:
参数设置为'"/yxAPI"'
6.增加styles文件夹,写scss
6.1 公用样式写在src/styles/mixin.scss和src/styles/common.scss
6.2 组件样式写在单文件scoped里,覆盖公用样式请用deep
6.2.1 添加依赖
1 | npm install sass-resources-loader --save-dev |
6.2.2 修改build/utils.js
1 | scss: generateLoaders('sass').concat( |
6.3 开发前须知:
1 | /** |
7.自动加载components组件
视情况看设置不设置
/src/components/componentRegister.js
1 | import Vue from 'vue' |
文件结构
1 | components |
这里对组件名做了判断,如果是index的话就取组件中的name属性处理后作为注册组件名,所以最后注册的组件为:multi-condition、basic-table
最后我们在main.js中==import ‘components/componentRegister.js’==,然后我们就可以随时随地使用这些基础组件,无需手动引入了~
全局注册方式必须在(通过 new Vue 创建的)Vue 根实例创建之前置入组件
注:VUX全局组件也可以创建一个js文件集中引入,在main.js中import引入
8. 写常用util方法
8.1 utils/auth.js –Token设置文件
Web端:(可采用下面一种方案)
1 | import { cookie as Cookies } from 'vux' |
APP端:(兼容IOS某些机型不支持cookie存储)
1 | import { cookie as Cookies } from 'vux' |
8.2 utils/request.js –Ajax请求配置文件
8.3 设置 vuex user.js
8.2 8.3见项目代码
8.4 登录状态验证流程说明
9 封装SVG Icon组件
安装
svg-sprite-loader
1
cnpm i svg-sprite-loader -D
修改 /build/webpack.base.conf.js
1 | /*---------- 注释原有loader ----------*/ |
- 新建 src/icons 文件夹
1 | icons |
index.js
1 | import Vue from 'vue' |
10 主题颜色配置
为了配合项目主题颜色,有必要修改vux weui的主题色,方便项目复用,修改文件在build/webpack.base.conf.js,在vux的plugins选项中补充,然后在src/styles/ 下增加 theme.less
请配置vux-loader的less-theme插件,指定用以覆盖的less文件路径:
1 | { |
11 修改build生成项目中css,js引用路径
在/config/index.js里找到 build.assetsPublicPath, 修改为 assetsPublicPath: './',
12 修改host地址让局域网内的其他机器访问
在 package.json 里找到 script.dev ,在后面添加上 --host 0.0.0.0
13 更改eslint规则
基本流程如上,后面写业务代码~