详解Vue-Cli 异步加载数据的一些注意点

借口腾不出时间去健身的人,迟早会腾出时间去看病!善待自己,幸福无比,善待别人,快乐无比,善待生命,健康无比。梦想,就是这样一个词,不在于拥有,而在于追求。

刚开始学vue的时候没有使用脚手架,现在用脚手架写法有点不同,今天遇到的问题是使用豆瓣api异步加载数据的时候,会一直在命令行上报错,基本上错误都是xxx 未定义。

例子

<template>
<div v-if="moviesData">

  <!-- 正在上映的电影-北京 -->
  <h1>{{ moviesData.title }}</h1>
  
</div>
</template>

<script>
import jsonp from 'jsonp'  // 一个jsonp插件 npm install jsonp --save

export default {
 data(){
  return {
   moviesData: null    // 如果不事先给一个默认值的data,就会报 xxx is not define
  }
 },
 
 // 生命周期函数
 created(){

  // 发送请求
  jsonp('https://api.douban.com/v2/movie/in_theaters', null, (err, data)=>{
   this.moviesData = data;
  });
 }
}
</script>

在发送异步请求的时候要注意两个点:

数据的初始值,我这里是给null作为初始值。

判断数据是否存在,在html中,我用v-if判断moviesData是否存在,可以确保只有在数据存在的时候才会渲染。

本文详解Vue-Cli 异步加载数据的一些注意点到此结束。是一丛秋菊,也要散发芳香;是一片秋叶,也要装点大地;是一株古柏,也要撑起蓝天;是一眼古井,也要流出清泉。谢谢大家支持!

您可能有感兴趣的文章
Vue路由参数的传递与获取方式详细介绍

vue学习记录之动态组件浅析

vue如何实现列表固定列滚动

vue如何实现伸缩菜单功能

vue项目中canvas如何实现截图功能