javascript - 在 Vue 中构建 axios 回调

标签 javascript vue.js babeljs axios

问题

如果我只想在我的项目中显示一个笑话,我的代码中遗漏了什么或做错了什么?

WIP demo on codepen


示例 JSON 响应

enter image description here

HTML

<div class="jokes" v-for="joke in jokes">
  <h2>{{ joke.setup }}</h2>
  <p>{{ joke.line }}</p>
</div>

JS - 巴别塔

new Vue({
  el: '#app',
  data:{
    jokes: []
  },
  created(){
    this.GetJokes();  
  },
  methods: {
     GetJokes () {
      axios.get('https://08ad1pao69.execute-api.us-east-1.amazonaws.com/dev/random_joke')
      .then(response => {

          let joke = response.data[0];

          let apiInfo = {
            setup: joke.setup,
            line: joke.punchline
          };
          this.jokes.push(apiInfo)
      })
    }
  }
})

最佳答案

您的响应不是数组。你只需要

let joke = response.data

这将修复您的代码。

这是您的 pen updated .

关于javascript - 在 Vue 中构建 axios 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51255261/

相关文章:

javascript - Django 和 jQuery 的困难(为什么 $ 在管理应用程序中未定义?)

javascript - 动画期间的 jQuery 碰撞检测

javascript - 如何使用 VeeValidate (Vue.Js) 上的字典自定义 "required"错误消息

javascript - React 自定义组件未按预期呈现

javascript - 如何在可滚动数据表中获取鼠标单击位置?

javascript - 以 Angular 将伪类添加到自定义模板/指令

javascript - 使用 Vue 单击并编辑文本输入

vue.js - 在运行时更改 Vuetify 2 中主题的主要文本颜色

javascript - `.babelrc` 文件在嵌套的node_modules文件夹中找不到预设

javascript - 使用 es6 和 React 未定义函数