vue中实现先请求数据再渲染dom分享


Posted in Javascript onMarch 17, 2018

在项目中遇到了一个问题,下面是vue template中的代码:

vue中实现先请求数据再渲染dom分享

我之前的写法是

vue中实现先请求数据再渲染dom分享

这样做的结果是下面取dom的操作,取到的dom都是undefined,也就是没有取到。

原因是并没有按照 请求数据—>渲染dom—>获取dom的顺序执行,实际的执行顺序是 先获取dom,而此时数组option中还是空的,上面的v-for循环也就没有渲染出dom,所以根本取不到(不理解是为什么)

后来我又把请求数据写在了created函数中,把取dom的操作写在mounted函数中,竟然还是先执行取dom的操作(是通过alert的顺序来判断执行的顺序),我也很绝望啊

最后终于找到了解决的办法:

vue中实现先请求数据再渲染dom分享

看到一个别人的回答是:“在数据请求的回调中使用nextTick,在nextTick的回调里试试~”

还有一个人的回答是:“如果有依赖dom必须存在的情况,就放到mounted(){this.$nextTick(() => { /* code */ })}里面”(这种之前我试过,我太好用,不懂为什么)

我把这两种方法综合起来,其实主要是第一种方法,发现好用了!

以上这篇vue中实现先请求数据再渲染dom分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript入门教程(10) 认识其他对象
Jan 31 Javascript
jquery 如何动态添加、删除class样式方法介绍
Nov 07 Javascript
jquery中EasyUI使用技巧小结
Feb 10 Javascript
js 声明数组和向数组中添加对象变量的简单实例
Jul 28 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
Aug 29 Javascript
简单实现js拖拽效果
Jul 25 Javascript
jquery操作ul的一些操作笔记整理(干货)
Aug 31 jQuery
js中事件对象和事件委托的介绍
Jan 21 Javascript
layer ui 导入文件之前传入数据的实例
Sep 23 Javascript
JS实现图片切换特效
Dec 23 Javascript
Vue $emit()不能触发父组件方法的原因及解决
Jul 28 Javascript
vue mvvm数据响应实现
Nov 11 Javascript
vue 每次渲染完页面后div的滚动条保持在最底部的方法
Mar 17 #Javascript
vue获取当前激活路由的方法
Mar 17 #Javascript
vue 实现复制内容到粘贴板clipboard的方法
Mar 17 #Javascript
echarts鼠标覆盖高亮显示节点及关系名称详解
Mar 17 #Javascript
vue结合Echarts实现点击高亮效果的示例
Mar 17 #Javascript
vue实现a标签点击高亮方法
Mar 17 #Javascript
Vue-路由导航菜单栏的高亮设置方法
Mar 17 #Javascript
You might like
php文档更新介绍
2011/07/22 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
php PDO属性设置与操作方法分析
2018/12/27 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
javascript中删除指定数组中指定的元素的代码
2011/02/12 Javascript
js中通过split函数分割字符串成数组小例子
2013/09/21 Javascript
js实现在同一窗口浏览图片
2014/09/17 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
JavaScript-html标题滚动效果的简单实现
2016/09/08 Javascript
jQuery实现圣诞节礼物传送(花式轮播)
2016/12/25 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
Angular2 组件间通过@Input @Output通讯示例
2017/08/24 Javascript
使用react-router4.0实现重定向和404功能的方法
2017/08/28 Javascript
自定义PC微信扫码登录样式写法
2017/12/12 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
2017/12/31 Javascript
element-ui表格列金额显示两位小数的方法
2018/08/24 Javascript
javascript实现的时间格式加8小时功能示例
2019/06/13 Javascript
Vue Router的手写实现方法实现
2020/03/02 Javascript
谈谈node.js中的模块系统
2020/09/01 Javascript
[01:09:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第一场 6.2
2018/06/04 DOTA
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Python中装饰器学习总结
2018/02/10 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
Python Django 命名空间模式的实现
2019/08/09 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
利用HTML5 Canvas制作键盘及鼠标动画的实例分享
2016/03/15 HTML / CSS
2014年情人节活动方案
2014/02/16 职场文书
陈胜吴广起义口号
2014/06/20 职场文书
汽车技术服务与贸易专业求职信
2014/07/20 职场文书
孩子教育的心得体会
2014/09/01 职场文书
民警群众路线教育实践活动对照检查材料
2014/10/04 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
php png失真的原因及解决办法
2021/10/24 PHP