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 相关文章推荐
js 创建快捷方式的代码(fso)
Nov 19 Javascript
Javascript中找到子元素在父元素内相对位置的代码
Jul 21 Javascript
深入document.write()与HTML4.01的非成对标签的详解
May 08 Javascript
js function定义函数的几种不错方法
Feb 27 Javascript
第一次接触神奇的Bootstrap导航条
Aug 09 Javascript
AngularJs 动态加载模块和依赖
Sep 15 Javascript
vue 注册组件的使用详解
May 05 Javascript
VUE 全局变量的几种实现方式
Aug 22 Javascript
vue favicon设置以及动态修改favicon的方法
Dec 21 Javascript
基于JS实现父组件的请求服务过程解析
Oct 14 Javascript
原生js实现瀑布流效果
Mar 09 Javascript
Node.js API详解之 dns模块用法实例分析
May 15 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读取EXCEL文件 php excelreader读取excel文件
2012/12/06 PHP
PHP统计目录中文件以及目录中目录大小的方法
2016/01/09 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
2017/04/25 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
PHP7 整型处理机制修改
2021/03/09 PHP
javascript document.compatMode兼容性
2010/02/23 Javascript
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
2013/11/12 Javascript
node.js实现BigPipe详解
2014/12/05 Javascript
javascript数组输出的两种方式
2015/01/13 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
探索Javascript中this的奥秘
2016/12/11 Javascript
JS基于对象的特性实现去除数组中重复项功能详解
2017/11/17 Javascript
vue.js 微信支付前端代码分享
2018/02/10 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
用Python的pandas框架操作Excel文件中的数据教程
2015/03/31 Python
AI人工智能 Python实现人机对话
2017/11/13 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
Python提取频域特征知识点浅析
2019/03/04 Python
Python 使用指定的网卡发送HTTP请求的实例
2019/08/21 Python
详解python破解zip文件密码的方法
2020/01/13 Python
python对XML文件的操作实现代码
2020/03/27 Python
pytorch使用horovod多gpu训练的实现
2020/09/09 Python
联想哥伦比亚网上商城:Lenovo Colombia
2017/01/10 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
Bloomingdale’s阿联酋:选购奢华时尚、美容及更多
2020/09/22 全球购物
Oracle的内存结构(Memory structures)
2015/06/10 面试题
便利店的创业计划书
2014/01/15 职场文书
安全标准化汇报材料
2014/02/03 职场文书
团购业务员岗位职责
2014/03/15 职场文书
小学课外阅读总结
2014/07/09 职场文书
违反工作规定检讨书范文
2014/12/14 职场文书
大一学生个人总结
2015/02/15 职场文书
关于上班时间调整的通知
2015/04/23 职场文书
2015年中秋放假通知范文
2015/08/18 职场文书
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js