vue使用快一个多月了,从移动端到PC端,踩过的坑也不少。项目的开发是基于element ui 与 mint ui 组件库,下面总结下项目中的一些知识点:

一、网页数据请求

首次进入页面,需要请求数据渲染页面。将相应的异步请求方法写在created  这个钩子中,在渲染前会发起请求;mouted 是页面数据发生变化的时候出发这个钩子

二、页面的缓存问题

由于页面请求,所以每次进入页面都需要请求,用户体验不是很好,在页面跳转的便签外套取一层<keep-alive>

     <keep-alive><router-view></router-view></keep-alive>

这样就会实现页面的缓存,如果刷新浏览器,会实现再次发起请求。

三、页面数据的渲染

页面数据的渲染,用的最多的就是v-for  这个指令了,遍历后台返回的数据,渲染到页面中。在遍历中,需要用到 :class  (选择样式,对于不同的元素)  @mouseover  @mouseleave  (实现鼠标移入移出的效果),用data 中的数据控制v-show  的显示,后台返回的段落信息用<p v-html="" />。特别值得注意的是v-if  与v-show 的区别。

四、vue的路由

vue的路由中的参数,比如ID传过来的3,一般$router.query.name  获取的是number类型,页面再次刷新后,用$router.query.name再次获取的是字符串,需要做相应的转换。vue手机端的页面最好是自己写tabbar,避免返回时候的问题,每一个选项还是用单页面的比较好。

五、vue的监听

vue中的监听watch 功能,对于新闻页面以及而三级页面,这个在本页面点击后,路由的id改变,数据重新渲染是非常重要的。

六、vue中键盘绑定事件

PS: 不能写成document.onkeydown = this.XX()  , 这样会绑定不成功。

七、webpack 打包第三方插件分离

在开发环境中,npm install xx --save   相关的第三方插件还是以这种方式安装;

在生产环境中,因打包的需要,需要在入口文件,index.html  用便签引入相关的js  与css

然后在 webpack.base.conf.js  添加以下这行代码:

然后再进行打包,mint-ui  就不会被webpack  打包,而是通过外部去引用,提高了网页首次加载的速度。可以比对下dist文件夹中js的大小。

PS: 严格模式下需要加入window ,需要注意的是 在html 中引入相关js 的时候,先在控制台window 中打印下,找到相关的js,比如‘mint-ui’ 引入以后在window 下是MINT ,如果还是写成‘mint-ui’,就回报错  ‘mint-ui’ is not defined

八、防止css 污染全局

加上这个就可以了!

九、webpack打包,背景图片不显示的问题

解决方法: 需要在build文件夹下的utils.js 中,加下如下代码

vue开发总结(一)的更多相关文章

  1. 【原创】windows下搭建vue开发环境+IIS部署

    [原创]win10下搭建vue开发环境  如果要转发,请注明原作者和原产地,谢谢! 特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图:     详细的安 ...

  2. vue开发体验

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  3. vue开发环境搭建及热更新

    写这篇博客的目的是让广大的学者在初入Vue项目的时候少走些弯路,虽然现在有很多博客也有差不多的内容,但是博主在里面添加了一些学习时碰到的小问题.在阅读这篇博客之前,我先给大家推荐一篇文章<入门W ...

  4. 用Vue开发一个实时性时间转换功能,看这篇文章就够了

    前言 最近有一个说法,如果你看见某个网站的某个功能,你就大概能猜出背后的业务逻辑是怎么样的,以及你能动手开发一个一毛一样的功能,那么你的前端技能算是进阶中高级水平了.比如咱们今天要聊的这个话题:如何用 ...

  5. 用vue开发一个app(4,一个久等了的文章)H5直播平台登录注册(1)

    我上一篇关于vue的文章和这一篇时间隔了有点久了.最近终于写完了. 因为我一直想写个有点实绩的东西,而不是随便写一个教程一样东西.结合最近在项目中学到的经验和我的一点创意. 首先介绍下这是个什么! H ...

  6. 使用vue开发项目需要注意的问题和可能踩到的坑

    最近,在公司给一些刚刚使用vue进行开发的同学做了一次分享, 其中包括一些vue开发中需要注意的点, 以及一些可能会踩到的坑.具体内容如下: 一.生命钩子使用需要注意的地方 1.beforeCreat ...

  7. vue开发项目详细教程(第一篇 搭建环境篇)

    最近做vue做项目碰到了不少坑,看了三天文档便开始上手做项目了,不是我牛b,是因为项目紧,我没有时间去深入学习,所以只能一边学一边做了. 我要做的项目是一个官方网站(包括管理后台),也因为是我第一次使 ...

  8. windows下搭建vue开发环境+IIS部署

    原创]win10下搭建vue开发环境  https://www.cnblogs.com/ixxonline/p/6007885.html 特别说明:下面任何命令都是在windows的命令行工具下进行输 ...

  9. 从零开始搭建vue开发环境及构建vue项目

    1.安装node.js 安装完成之后,打开dos(windows+R或者直接windows键打开,输入cmd,按回车键)窗口,输入命令node -v可以查看安装的 node.js版本 node.js自 ...

  10. vue开发记录--element-ui的form表单label和placeholder国际化遇到的小问题

    <el-form-item label="$t('permission.employeeName')"> <el-input v-model="form ...

随机推荐

  1. 【2018.10.15】WZJ笔记(数论)

    1. 证明:对于任意质数$p\gt 3$,$p^2-1$能被$24$整除. 证:平方差公式,$p^2-1 = (p-1)(p+1)$. 再把$24$分解质因数$2^3*3$. 三个相邻的自然数中至少有 ...

  2. java面试题之stop()和suspend()方法为何不不推荐使⽤?

    stop方法:他是不安全的,他会停止所有运行中的线程: suspend方法:容易发生死锁,虽然调用suspend方法目标线程会停下来,但是仍然持有之前的锁,其他线程都不能访问锁定的资源,就会造成死锁, ...

  3. ElasticSearch分词器

    什么是分词器? 分词器,是将用户输入的一段文本,分析成符合逻辑的一种工具.到目前为止呢,分词器没有办法做到完全的符合人们的要求.和我们有关的分词器有英文的和中文的.英文的分词器过程:输入文本-关键词切 ...

  4. 济南学习 Day 5 T3 am

    [题目描述] 众所不知,rly现在不会玩国际象棋.但是,作为一个OIer,rly当然做过八皇后问题.在这里再啰嗦几句,皇后可以攻击到同行同列同对角线,在 n*n的棋盘中,摆放n个皇后使它们互相不能攻击 ...

  5. 【BZOJ3991】寻宝游戏(虚树,DFS序,splay)

    题意:求在树中从任意点开始,经过若干个关键点回到原点的最小距离 要求支持在线将某个点设置(取消)为关键点,以及询问答案 n,m<=100000 len[i]<=10^9 思路:显然是一个虚 ...

  6. iOS7 毛玻璃效果

    转自:http://prolove10.blog.163.com/blog/static/138411843201391401054305/ 原图:  效果图:  实现:首先需要导入Accelerat ...

  7. AFNetworking实时监测网络连接

    
// 网络变化消息 [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(checkNetwork) ...

  8. gdb 远程调试android进程

    原文:http://blog.csdn.net/xinfuqizao/article/details/7955346?utm_source=tuicool 什么是gdb 它是gnu组织开发的一个强大的 ...

  9. 在Fedora 22下安装配置RealVNC Server 5.2.3的经验总结

    RealVNC是目前功能最全.性能最好的VNC商业软件套件,很多时候为了确保性能和功能的统一,还是大量地在使用RealVNC.最近在Fedora 22工作站上安装RealVNC Server 5.2. ...

  10. cobbler api接口开发测试实例

    条件1:必须搭建好cobbler服务,并且可以通过web访问:http://cobbler_ip/cobbler_web 测试可以打开.然后再用以下命令测试. #!/opt/python3/bin/p ...