快速构建一个简单的单页vue应用
-
技术栈
- vue-cli
- webpack
- vux,vux-loader
- less,less-loader
- vue-jsonp
- vue-scroller
- ES6
-
vue-cli:一个vue脚手架工具,利用vue-cli可以快速构建一个vue项目。
-
webpack:一个现代 JavaScript 应用程序的模块打包工具。
-
vux: 一个移动端的UI组件库。
-
vue-jsonp vue的一个插件,用于送jsonp请求。
-
vue-scroller vue的一个插件,用于实现下拉刷新和上拉加载。
构建过程:
-
通过命令行安装vue-cli,webpack
-
通过命令行工具初始化一个基于webpack的vue项目,
- vue init webpack <template-name(构建模板的名称,此处是webpack)>
- vue init webpack <template-name(构建模板的名称,此处是webpack)>
-
删除默认组件和样式
-
安装vux,vux-loader,进行vux配置
-
配置过程
- 在webpack配置文件 => build/webpack.config.js中引入vux-loader
- 将原来的导出配置赋值给 变量webpackConfig(可随意取名,建议语义化)
- 调用vux-loader中的merge方法
const vuxLoader = require('vux-loader') const webpackConfig = originalConfig // 原来的 module.exports 代码赋值给变量 webpackConfig module.exports = vuxLoader.merge(webpackConfig, { plugins: ['vux-ui'] })
-
-
因为vux样式中用less,所以还需要安装less和less-loader
-
安装完成后即可在项目中使vux中提供的插件了。
备注:
- 滚屏效果使用的是 Scroller插件 (可在npm中下载,npm中有使用文档)
- 发送jsonp请求使用的是 vue-jsonp插件 (可在npm中下载,npm中有使用文档)
实现项:
- 首屏轮播
- 横向tab
- 走马灯新闻轮播
- 新闻列表
- 下拉刷新页面
- 上拉加载更多
遇到的小问题:
- 组件配合使用时出现样式冲突
- 解决 : 手动进行样式调整
- 从接口中获取的数据结构不符合组件数据结构以及数据错误
- 解决 :根据页面展示布局和组件默认配置项合理筛选数据
- 页面载入时默认触发上拉加载
- 解决:定义变量记录首次加载,当首次加载完成后再次触发上拉加载时执行函数中的内容
获取更多资源关注公众号:算了个球