【发布时间】:2020-07-03 01:37:06
【问题描述】:
我正在尝试创建一个用于显示简单通知的快餐栏组件。它可以在整个应用程序的许多地方使用,也可以在单个页面上使用。我已经创建了一个组件作为子组件,并将它导入到我想要使用它的父组件中。在这个父组件中可以多次使用这个子组件。我应该如何以每次调用此组件时获取其适当数据的方式实现(例如,对于错误颜色 = 红色文本 =“错误”,对于成功颜色 =“绿色”消息 =“成功”)。
关于如何实现它有什么建议吗?
parent.vue----------------------------
<snackbar
:snackbar="snackbar"
:color="color"
:text="message"
v-on:requestClose="close"
/>
data() {
return {
snackbar: false,
color: "orange",
timeout: 3000,
message: "calling from employee compoenent"
};
},
methods: {
hello() {
console.log("button clicked!!!");
this.snackbar = true;
},
close() {
this.snackbar = false;
},
child.vue-----------------------------------------------
<template>
<v-snackbar v-model="snackbar" right top :timeout="timeout" :color="color"
>{{ text }}
<v-btn dark text @click.native="$emit('requestClose')">Close</v-btn>
</v-snackbar>
</template>
<script>
export default {
name: "snackbar",
data() {
return {
timeout: 3000
};
},
props: ["snackbar", "text", "color"],
};
</script>
<style></style>
【问题讨论】:
标签: vue.js notifications components vue-component snackbar