Javascript 无法将axios响应传输到对象
我试图将响应的结果传输到characters对象,但它抛出了一个错误: 无法读取未定义的属性“characters”Javascript 无法将axios响应传输到对象,javascript,vue.js,axios,Javascript,Vue.js,Axios,我试图将响应的结果传输到characters对象,但它抛出了一个错误: 无法读取未定义的属性“characters” 常量axios=要求(“axios”); 导出默认值{ 数据:()=>({ 字符:[], }), 创建(){ axios .get(“https://rickandmortyapi.com/api/character") .然后(功能(响应){ const resp=response.data.results; 这个.characters.push(resp); }) .cat
常量axios=要求(“axios”);
导出默认值{
数据:()=>({
字符:[],
}),
创建(){
axios
.get(“https://rickandmortyapi.com/api/character")
.然后(功能(响应){
const resp=response.data.results;
这个.characters.push(resp);
})
.catch(函数(错误){
//处理错误
console.log(错误);
});
},
};
此
不是指您的vue实例,因此有一些方法可以修复它
解决方案1箭头函数
axios
.get(“https://rickandmortyapi.com/api/character")
。然后(响应=>{
const resp=response.data.results;
这个.characters.push(resp);
})
.catch(错误=>{
//处理错误
console.log(错误);
});代码>挂起…对象上根本没有字符
属性,只有在调用数据
方法时按需生成的属性。字符
在另一个函数体中定义。你到底想达到什么目的?
<script>
const axios = require("axios");
export default {
data: () => ({
characters:[],
}),
created() {
axios
.get("https://rickandmortyapi.com/api/character")
.then(function(response) {
const resp = response.data.results;
this.characters.push(resp);
})
.catch(function(error) {
// handle error
console.log(error);
});
},
};
</script>