久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - vue 獲取json數(shù)據(jù)的某個屬性成功,卻報錯

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

問題描述

使用vue獲取豆瓣電影的某個電影詳細信息,數(shù)據(jù)已經(jīng)獲取成功,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.gepszalag.com/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數(shù)據(jù)的某個屬性成功,卻報錯

問題解答

回答1:

因為獲取數(shù)據(jù)是異步的,而當你模板掛載完后,你的數(shù)據(jù)還沒獲取到,導(dǎo)致detail.rating.average沒定義

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

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

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

一個解決方案是,在 data 中即預(yù)先按照 v-if 內(nèi)的嵌套結(jié)構(gòu),定義好 detail 數(shù)據(jù)結(jié)構(gòu)即可。

標簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 日韩免费高清视频 | 综合五月激情 | www.国产.com | 无码日韩精品一区二区免费 | 欧美不卡一区二区 | 69性欧美高清影院 | 久久精品1区2区 | 国产一区二区视频免费 | 久久综合久久综合久久 | 欧美成人中文字幕 | 高清xxxx | 欧美jizzhd精品欧美巨大免费 | 亚洲一区中文字幕在线观看 | 久久久天堂 | 成人午夜影院 | 久久成人在线 | 中文字幕在线观 | 欧美在线观看视频 | 久久av网| 亚洲一区二区福利 | 国产福利在线播放 | 亚洲精品一区二区三区中文字幕 | 一本大道久久a久久精二百 亚洲欧美高清 | 欧美成人精品一区二区三区在线看 | 精品国产乱码久久久久久久 | 国产精品美女久久久久aⅴ国产馆 | 久久精品视频网站 | 美女视频黄的免费 | 看真人视频a级毛片 | 欧美日本一区 | 免费一区二区三区 | 国产精品成人网 | 依人成人综合网 | 91在线看视频 | 日本高清中文字幕 | 成人在线免费观看视频 | 四色成人av永久网址 | 日韩av电影在线免费观看 | a国产视频 | 一区二区三区不卡视频 | 草比网站 |