解决vue.js 数据渲染成功仍报错的问题


Posted in Javascript onAugust 25, 2018

最近在做一个vue项目,用的是官方推荐的axios请求数据,数据结构是一级对象嵌套二级对象,发现一级对象数据渲染不报错,二级数据渲染报错。很是郁闷!data函数如下

export default {
  name: 'hello',
  data() {
   return {
    card:{} 

   }
  }
  }

返回的数据如下:

{
 "object":{
  "subObject":"123",
  ...
 }
}

报错的原因是在data函数return的card里没有二级对象.所以会报错;

解决办法是:

export default {
  name: 'detail',
  data() {
   return {
    loading: false,
    card:{},
   }
  },
  created() {
   this.fetchData();
  },
   methods: {
   fetchData() {
   this.loading = true;
   let that=this;
    this.ajax.get(url, { params: { id: "yourId" } })
     .then(function (response) {
      that.loading = false;
     }, function (error) {
      console.log(error);
     })

   }
  }

然后在html中加上下面这句:

<template>
 <div v-if="!loading">
 <!----你的html代码------>
 </div>
</template>

然后就不会报错了!希望对你有帮助!~溜了~~~

拓展知识:解决Vue组件页面渲染正常对象报错undefined的问题

首先,页面代码:{{options.fileList[0].fullPath}},

渲染结果:解决vue.js 数据渲染成功仍报错的问题(渲染成功),

但是控制台依然报错:解决vue.js 数据渲染成功仍报错的问题

如果有跟我遇到同样问题的朋友一定跟我一样,心里一万只草泥马飘过,都显示正常了,你TM的还给我报错,这我就忍不了了,首先我在页面节点上直接打印,OK,没有问题,能完美的打印出来,然后换了个思路,在mounted里面看看什么情况呢,功夫不负有心人,解决vue.js 数据渲染成功仍报错的问题 ,mounted里面打印出来是个空的数组,那么我应该就知道什么问题了,应该是页面加载的时候,数据还没有传过来,但是这时候我们已经开始在使用了,所以会报undefined的错误,当数据的值传过来的时候,页面找到这个数据,并渲染上去,所以我看到的页面又是正常了,所以这样的问题应该怎么解决呢?

答案也很简单,在你渲染的节点加个判断就好了, 解决vue.js 数据渲染成功仍报错的问题 ,这样的话当发现它为undefined的时候就不会去读取数据,等有数据的时候再去读取,这样的话,就不会出现undefined的错误了。

以上这篇解决vue.js 数据渲染成功仍报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS常用正则表达式总结
Nov 12 Javascript
EasyUI中datagrid在ie下reload失败解决方案
Mar 09 Javascript
JavaScript中的Function函数
Aug 27 Javascript
理解JavaScript事件对象
Jan 25 Javascript
JavaScript使用Range调色及透明度实例
Sep 25 Javascript
完全深入学习Bootstrap表单
Nov 28 Javascript
解析Vue 2.5的Diff算法
Nov 28 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
Feb 13 Javascript
JS使用百度地图API自动获取地址和经纬度操作示例
Apr 16 Javascript
vue-cli和v-charts实现可视化图表过程解析
Oct 08 Javascript
微信小程序如何获取地址
Dec 24 Javascript
bootstrap实现tab选项卡切换
Aug 09 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
Aug 25 #Javascript
vue中各选项及钩子函数执行顺序详解
Aug 25 #Javascript
vue实现在一个方法执行完后执行另一个方法的示例
Aug 25 #Javascript
JS Object.preventExtensions(),Object.seal()与Object.freeze()用法实例分析
Aug 25 #Javascript
对Vue beforeRouteEnter 的next执行时机详解
Aug 25 #Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
Aug 25 #Javascript
Vue中div contenteditable 的光标定位方法
Aug 25 #Javascript
You might like
php中array_multisort对多维数组排序的方法
2020/06/21 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
2014/09/22 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
JS触发服务器控件的单击事件(详解)
2016/08/06 Javascript
详解jQuery选择器
2016/12/21 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
ligerUI---ListBox(列表框可移动的实例)
2017/11/28 Javascript
jQuery NProgress.js加载进度插件的简单使用方法
2018/01/31 jQuery
webpack打包多页面的方法
2018/11/30 Javascript
vue.js实现的幻灯片功能示例
2019/01/18 Javascript
layui 上传文件_批量导入数据UI的方法
2019/09/23 Javascript
纯js+css实现在线时钟
2020/08/18 Javascript
js+for循环实现字符串自动转义的代码(把后面的字符替换前面的字符)
2020/12/24 Javascript
[04:09]显微镜下的DOTA2第十二期—NaVi美如画的团战
2014/06/23 DOTA
[40:03]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#1EHOME VS Archon
2016/03/02 DOTA
NetworkX之Prim算法(实例讲解)
2017/12/22 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
python高阶函数map()和reduce()实例解析
2020/03/16 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
2020/04/09 Python
Python中无限循环需要什么条件
2020/05/27 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
利用CSS3把图片变成灰色模式的实例代码
2016/09/06 HTML / CSS
HTML中使用SVG与SVG预定义形状元素介绍
2013/06/28 HTML / CSS
时尚圣经:The Fashion Bible
2019/03/03 全球购物
通信工程专业女生个人求职信
2013/09/21 职场文书
党校学习自我鉴定
2014/02/24 职场文书
大学生创业项目方案
2014/03/08 职场文书
元旦促销方案
2014/03/15 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
大学生学习新党章思想汇报
2014/10/25 职场文书
世界水日宣传活动总结
2015/02/09 职场文书
驾驶员管理制度范本
2015/08/06 职场文书
Win11 Build 25179预览版发布(附更新内容+ISO官方镜像下载)
2022/08/14 数码科技