快速构建一个简单的单页vue应用

时间:2023-01-11 12:19:09

快速构建一个简单的单页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的一个插件,用于实现下拉刷新和上拉加载。

构建过程:

  1. 通过命令行安装vue-cli,webpack

  2. 通过命令行工具初始化一个基于webpack的vue项目,

    • vue init webpack <template-name(构建模板的名称,此处是webpack)>
  3. 删除默认组件和样式

  4. 安装vux,vux-loader,进行vux配置

    • 配置过程

      1. 在webpack配置文件 => build/webpack.config.js中引入vux-loader
      2. 将原来的导出配置赋值给 变量webpackConfig(可随意取名,建议语义化)
      3. 调用vux-loader中的merge方法
      	const vuxLoader = require('vux-loader')
      const webpackConfig = originalConfig // 原来的 module.exports 代码赋值给变量 webpackConfig module.exports = vuxLoader.merge(webpackConfig, {
      plugins: ['vux-ui']
      })
  5. 因为vux样式中用less,所以还需要安装less和less-loader

  6. 安装完成后即可在项目中使vux中提供的插件了。

备注:

  • 滚屏效果使用的是 Scroller插件 (可在npm中下载,npm中有使用文档)
  • 发送jsonp请求使用的是 vue-jsonp插件 (可在npm中下载,npm中有使用文档)

实现项:

  1. 首屏轮播
  2. 横向tab
  3. 走马灯新闻轮播
  4. 新闻列表
  5. 下拉刷新页面
  6. 上拉加载更多

遇到的小问题:

  • 组件配合使用时出现样式冲突
    • 解决 : 手动进行样式调整
  • 从接口中获取的数据结构不符合组件数据结构以及数据错误
    • 解决 :根据页面展示布局和组件默认配置项合理筛选数据
  • 页面载入时默认触发上拉加载
    • 解决:定义变量记录首次加载,当首次加载完成后再次触发上拉加载时执行函数中的内容

快速构建一个简单的单页vue应用的更多相关文章

  1. 基于Vue2&period;0&plus;Vue-router构建一个简单的单页应用

    爱编程爱分享,原创文章,转载请注明出处,谢谢!http://www.cnblogs.com/fozero/p/6185492.html 一.介绍 vue.js 是 目前 最火的前端框架,vue.js ...

  2. simple-spa 一个简单的单页应用实例

    上两篇文章说过要写一个简单的单页应用例子的, 迟迟没有兑诺, 实在有愧 哈哈.这篇写给小白用户哈. 正好趁今天风和日丽,事情不多, 把从项目里的代码扣取了一下, 整理了一个简单的例子.因为我们生产项目 ...

  3. ionic 最简单的路由形式,头部固定,下面tab切换-------一个简单的单页切换起飞了

    <ion-header-bar class="bar-dark" align-title="left"> <h1 class="ti ...

  4. 快速构建一个使用axios的vue应用程序(转)

    英文原文:https://www.sitepoint.com/fetching-data-third-party-api-vue-axios/ 译文:https://segmentfault.com/ ...

  5. 快速构建一个vue项目

    首先介绍一下命令行构建一个vue项目步骤: 1.下载安装node.js(直接运行安装包根据步骤安装完),打开命令行输入:node -v ,出现版本号即安装成功. 2.命令行界面输入:cnpm inst ...

  6. bootstrap &plus; requireJS&plus; director&plus; knockout &plus; web API &equals; 一个时髦的单页程序

    也许单页程序(Single Page Application)并不是什么时髦的玩意,像Gmail在很早之前就已经在使用这种模式.通常的说法是它通过避免页面刷新大大提高了网站的响应性,像操作桌面应用程序 ...

  7. 手把手教你用vue-cli构建一个简单的路由应用

    上一章说道:十分钟上手-搭建vue开发环境(新手教程)https://www.jianshu.com/p/0c6678671635 开发环境搭建好之后,那么开始新添加一些页面,构建最基本的vue项目, ...

  8. 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局&lpar;转&rpar;

    [jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...

  9. struts1&colon;&lpar;Struts重构&rpar;构建一个简单的基于MVC模式的JavaWeb

    在构建一个简单的基于MVC模式的JavaWeb 中,我们使用了JSP+Servlet+JavaBean构建了一个基于MVC模式的简单登录系统,但在其小结中已经指出,这种模式下的Controller 和 ...

随机推荐

  1. 前端MVC学习总结(二)——AngularJS验证、过滤器、指令

    一.验证 angularJS中提供了许多的验证指令,可以轻松的实现验证,只需要在表单元素上添加相应的ng属性,常见的如下所示: <input Type="text" ng-m ...

  2. java jps 命令详解

    JPS 名称: jps - Java Virtual Machine Process Status Tool 命令用法: jps [options] [hostid] options:命令选项,用来对 ...

  3. Django基础——Model篇&lpar;一&rpar;

    到目前为止,当程序涉及到数据库相关操作时,我们一般都会这么操作:    (1)创建数据库,设计表结构和字段    (2)使用MySQLdb来连接数据库,并编写数据访问层代码    (3)业务逻辑层去调 ...

  4. Opacity多浏览器透明度兼容处理&lpar;转&rpar;

    用来设定元素透明度的 Opacity 是CSS 3里的一个属性.当然现在还只有少部分浏览器支持. 不过各个浏览器都有自己的私有属性来支持,其中包括老版本的Mozilla和Safari: IE: fil ...

  5. MES项目中出现的一个事务嵌套的使用场景

    昨天在MES项目中,需要在业务逻辑的几个关键点记录错误信息,需要把错误信息写入数据表. 但是由于整个业务逻辑都是包在一个事务模板里面的 比如这样的: WhhTransactionTemplate tr ...

  6. docker 配置桥接网络

    2.5 docker配置桥接网络(上): 为了使本地网络中的机器和Docker 容器更方便的通信,我们经常会有将Docker容器 配置到和主机同一网段的需求. 这个需求其实很容器实现, 我们只需要将D ...

  7. Android布局&lowbar;LinearLayout布局

    一.LinearLayout 布局,类似于一个盒子 1. 主要属性有: (1)android:orientation 设置LinearLayout容器布局组件的方式:要么按行要么按列.只能取值:hor ...

  8. hibernate的配置 1

    hibernate 是一种ORM框架,是ORM框架中一个典范 ORM叫做对象关系映射 是面向对象语言和关系型数据库之间的映射关系 所以只有在面向对象语言或者关系型数据库没用的时候ORM才会消失 ORM ...

  9. Oracle单表的复杂查询

    Oracle单表的复杂查询 select avg(sal),max(sal),deptnofrom empgroupby deptno; orderby deptno; 查询工资高于500或者是岗位为 ...

  10. Web流量劫持

    BadTunnel实战之远程劫持任意内网主机流量 http://www.freebuf.com/articles/web/109345.html http://blog.csdn.net/ts__cf ...