Warum erhalte ich in Vue beim Initialisieren des Arrays und Anzeigen der Ausgabe die Fehlermeldung „Eigenschaft von undefiniert kann nicht gelesen werden“?
<p>
<p>UsersPage.vue:</p>
<pre class="brush:php;toolbar:false;"><script>
Standard exportieren {
data:() =>({
Benutzerliste: []
}),
Methoden:{
asynchrone createUsersList(){
this.usersList =wait fetch("https://jsonplaceholder.typicode.com/users").then((response)=> Response.json());
}
},
erstellt(){
this.createUsersList();
}
}
</script>
<Vorlage>
<ul>
<li v-for="Benutzer in Benutzerliste" :key="user.id"><b>姓名:</b>{{user.name}}, <b>用户名:</b> {{user.username}},<b>邮编:</b> {{user.address.street}} </li>
</ul>
</template></pre>
<p> und App.vue:</p>
<pre class="brush:php;toolbar:false;"><script>
Importieren Sie UsersPage aus "./components/UsersPage.vue"
Standard exportieren {
Komponenten: {
Benutzerseite,
},
Daten: () => ({
currentPage: "首页",
}),
Methoden: {
showHomePage() {
this.currentPage = "首页";
},
showLoginPage() {
this.currentPage = "登录";
},
},
};
</script>
<Vorlage>
<header class="header">
<span class="logo">
<img src="@/assets/vue-heart.png" width="30" />C'est La Vue
</span>
<nav class="nav">
<a href="#" @click.prevent="showHomePage">首页</a>
<a href="#" @click.prevent="showLoginPage">登录</a>
</nav>
</header>
<Benutzerseite/>
</template></pre>
<p>Wenn ich jedoch „usersList“ in ein beliebiges Array mit einer beliebigen Anzahl von Elementen ändere (z. B. <code>usersList:[1,2]</code>), werden die Daten immer noch im richtigen Format angezeigt, jedoch in der Konsole des Browsers Folgender Fehler tritt auf: </p>
<pre class="brush:php;toolbar:false;">Uncaught TypeError: Eigenschaften von undefiniert können nicht gelesen werden (liest „Straße“)
unter UsersPage.vue:19:149
bei renderList (runtime-core.esm-bundler.js:2894:22)
bei Proxy._sfc_render (UsersPage.vue:19:163)
bei renderComponentRoot (runtime-core.esm-bundler.js:902:44)
bei ReactiveEffect.componentUpdateFn [as fn] (runtime-core.esm-bundler.js:5615:57)
bei ReactiveEffect.run (reactivity.esm-bundler.js:187:25)
bei example.update (runtime-core.esm-bundler.js:5729:56)
bei setupRenderEffect (runtime-core.esm-bundler.js:5743:9)
bei mountComponent (runtime-core.esm-bundler.js:5525:9)
bei ProcessComponent (runtime-core.esm-bundler.js:5483:17)</pre>
<p>Warum erhalte ich diese Fehlermeldung, obwohl die Daten korrekt gerendert werden und die Adresse in https://jsonplaceholder.typicode.com/users vorhanden ist? </p>