gpt4 book ai didi

vue.js - vue 中的对象数据属性是否需要存在所有属性?

转载 作者:行者123 更新时间:2023-12-01 04:26:30 25 4
gpt4 key购买 nike

假设我是这样开始的:

data() {
return {
user: {}
}
}

然后……我进行了 API 调用:
let response = await this.axios.get("/api/users/1.json");
this.user = response.data

这是将我的 API 调用中的数据分配给 this.user 的正确方法吗? ?

user的所有属性需要先定义吗?

最佳答案

不,您不必声明 user 的所有属性.刚好 user在任何值不同于 undefined 的数据中就足够了。

当属性(property)在data , Vue 会将其替换为 get特尔和一个 set三。当你这样做时:

this.user = newValue;

您实际上是在调用一个 setter 来映射 newValue 的所有属性。进入 setter/getter 本身。

在官方文档中,您可以在 Reactivity in Depth 上找到更多信息。页。

看看下面。检查演示和图像中显示已创建(并在控制台中打印)的对象的说明。

var app = new Vue({
el: '#app',
data: {
other: null,
user: null
},
mounted() {
this.user = {
name: 'bob',
age: 10
}
}
})
console.dir(app)
<script src="https://unpkg.com/vue"></script>

<div id="app">
<p>{{ other }}</p>
<p>{{ user }}</p>
</div>


enter image description here

关于vue.js - vue 中的对象数据属性是否需要存在所有属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58312359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com