如何使用 Vue 和 Fetch Api 获取 json
2019-02-23
10930
我有一个基于 Vue.js 的简单代码:
const app = new Vue({
el: 'vue-app',
data: {
displayedBooks: {}
},
created() {
fetch('/library').then(response => response.json())
.then((data) => this.data.displayedBooks = data);
}
});
但是我得到了一个异常:
Uncaught (in promise) TypeError: Cannot set property 'displayedBooks' of undefined at fetch.then.then (main.js:8)
为什么这个简单的代码不能正常工作?
2个回答
它只是
this.displayedBooks
,而不是
this.data.displayedBooks
。Vue 数据参数中的所有内容都会直接附加到此。
Aleks Be
2019-02-26
const app = new Vue({
el: 'vue-app',
data: {
displayedBooks: {}
},
created() {
fetch('/library').then(response => {
this.displayedBooks = response.data
}, error =>{
console.log(error)
})
});
Masterdash
2020-05-08