亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javascript - vue 獲取json數據的某個屬性成功,卻報錯

瀏覽:78日期:2023-02-18 08:56:47

問題描述

使用vue獲取豆瓣電影的某個電影詳細信息,數據已經獲取成功,average屬性也在頁面上顯示成功,但是控制臺卻報錯。

<template> <p id='movie-detail'><p class='movie-card'> <h2>{{detail.title}}</h2> <h4>({{detail.original_title}})</h4> <section class='movie-intro'><p class='left'><!--就是這部分代碼報錯--> <mt-cell><span v-if=’detail.rating.average!=0’>{{detail.rating.average}}分</span><span v-else>暫無評分</span><img v-for='starNum in Math.round(detail.rating.average/2)' slot='icon' src='http://www.aoyou183.cn/static/images/ratingStar.png' height='18'> </mt-cell></p> </section></p> </p></template><script>export default { data() { return {movieID: ’’,detail: [] }},created: function() { var that = this; this.$http.get(’http://127.0.0.1:8081/movie/subject/’ + that.$route.params.id).then(function(response) { that.detail = response.data;}).catch(function(error) { console.log(error);});},mounted: function() { this.movieID = this.$route.params.id;}}</script>

javascript - vue 獲取json數據的某個屬性成功,卻報錯

問題解答

回答1:

因為獲取數據是異步的,而當你模板掛載完后,你的數據還沒獲取到,導致detail.rating.average沒定義

比較好的方式是你在data中就定義好你在模板中有引用到的值

data() { detail: {rating: { average: ’’} }}回答2:

你在模板中書寫了 v-if=’detail.rating.average!=0’,但組件初始化時 data 內屬性卻是 detail: [],從而 detail.rating 就是 undefined,因此在使用 detail.rating.average 時就會產生錯誤了。

一個解決方案是,在 data 中即預先按照 v-if 內的嵌套結構,定義好 detail 數據結構即可。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 南京巨根无套操到你窒息 | 国产精品视频一区二区噜噜 | 成人做爰全过程免费看视频 | 国产一级特黄在线播放 | 国产做受视频激情播放 | 日韩欧美国产偷亚洲清高 | 国产人成免费视频 | 麻豆传媒网站网址入口 | 香蕉高清免费永久在线视频 | 国产制服丝袜在线观看 | 夜夜爱夜夜操 | 精品国产97在线观看 | 亚洲国产欧美在线 | 日本免费新一区二区三区 | 色男天堂 | 欧美一区二区三区国产精品 | 国产美女一区二区 | 黄色a免费 | 亚洲国产欧美在线观看 | wwxxx日本| 欧美一级片毛片免费观看视频 | 国产亚洲精品自在久久不卡 | 成人欧美午夜视频毛片 | 特一级黄色 | 最新三级网站 | 久久官网 | 69视频最新在线观看 | 亚洲精品91香蕉综合区 | 夜色网站| 欧美影院天天5g天天爽 | 色婷婷综合在线 | 国产不卡一区二区三区免费视 | 免费中文字幕乱码电影麻豆网 | 国产精品一区二区在线播放 | 日本高清中文字幕视频在线 | 国产成人18黄禁网站免费观看 | 日韩毛片免费观看 | 1024你懂的国产 | 黄色淫片 | 日韩中文字幕视频 | 国产精品极品美女自在线看免费一区二区 |