gpt4 book ai didi

vue.js - 使用多个激活器验证对话框

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

我在 vuetify 中制作了一个对话框,并希望它有多个可能的按钮来激活它。这些按钮彼此不同,并且在几个不同的组件中。所以我不能只将对话框组件导入到位置,因为按钮都是相同的,因为它们在对话框中定义:

<v-dialog>
<template v-slot:activator="{ on, attrs }">
<v-btn
v-bind="attrs"
v-on="on"
>
Activate
</v-btn>
</template>

<v-card>
My Content
</v-card>
</v-dialog>

有没有办法不通过复制组件文件来达到我的目标?

最佳答案

您可以创建一个全局模态组件以放置在 App.vue 中,并使用 v-model 而不是激活器来触发它。 v-model 使用全局状态(例如来自 Vuex 等),您可以从任何地方切换它:

模态

<template>
<v-dialog v-model="$store.state.isModal">
<v-card>
My Content
</v-card>
</v-dialog>
</template>

然后您可以在其他组件中切换该状态:

<v-btn @click="$store.dispatch('showModal')">SHOW</v-btn>

Here's a demo使用 Vue.prototypeVue.observable而不是 Vuex 用于全局状态

关于vue.js - 使用多个激活器验证对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66509051/

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