vue.js - 无法在 vue 模板中显示 vuejs 数据属性
问题描述
我正在尝试使用事件总线从组件 A 发送数据:
<template>
<div v-for="(user, index) in users" :key="index" class="col-lg-6">
<div class="card card-primary card-outline">
<div class="card-body d-flex">
<h1 class="mr-auto">{{ user.name }}</h1>
<a href="#" @click="envoyerDetails(user)" class="btn btn-primary ml-auto">Afficher</a>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
users: {},
}
},
methods: {
envoyerDetails($data){
Fire.$emit('envoyer_details_projet', $data);
this.$router.push('details-projet');
},
loadUser() {
if(this.$gate.isAdmin()){
axios.get("api/user").then(({ data }) => (this.users = data.data));
}
}
},
mounted() {
this.loadUser()
}
}
</script>
在组件 B 中,我收到数据,我想以这种方式在模板中显示它:
<template>
<div class="right_col text-center" role="main">
<h5><b>name: {{ user.name }}</b> </h5>
</div>
</template>
export default {
data() {
return {
user: {},
}
},
methods: {
afficherDetails (args) {
this.user = args;
console.log(this.user.name);
}
},
mounted() {
Fire.$on('envoyer_details_projet', this.afficheDetails);
}
}
数据不显示在模板中,但显示在控制台中。我错过了什么?
解决方案
也许当您在组件 A 中发出事件envoyer_details_projet时,组件 B 尚未安装,因此无法接收数据。
推荐阅读
- javascript - 如何订购整数字符串、浮点数和特殊字符
- python - 从 Python 脚本调用 Maxima 文件
- node.js - 为什么我们可以使用 redux 时需要 cookie?
- ionic4 - 为什么来自浏览器的深层链接不起作用?
- javascript - 在组件模板中使用 Vue.js 指令
- python-3.x - 如果找不到我的搜索词添加到数组
- list - SPARQL - 在不同对象之间过滤
- java - 当前歌曲在洗牌后重复。我需要指导以防止重复发生
- django - Uncaught (in promise) TypeError: Cannot read property 'push' of undefined axios
- azure - Microsoft AD JWT 不会解码