You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击关闭按钮无法关闭Vuetify Snackbar?求解决方案

Vuetify Snackbar 点击关闭无响应的解决方法

你遇到的问题主要有三个错误点,修正后就能正常实现关闭功能:

  • Snackbar的value绑定错误
    原代码里把:value硬设为true,没有关联到data里的snackbar变量,导致修改变量无法控制弹窗状态。必须把:value绑定到响应式的snackbar变量上。

  • 关闭按钮的点击事件语法错误
    @click="snackbar: false"是错误写法,Vue中修改数据要用赋值语句,应该写成@click="snackbar = false"。

  • 未使用正确的插槽放置操作按钮
    Vuetify的Snackbar要求操作按钮放在actions插槽中,否则按钮的功能关联会出问题,需要用<template #actions>(或<v-slot:actions>)包裹关闭按钮。

另外,原代码里用到了multiLine但没在data里定义,会触发控制台警告,建议补充这个变量。

修正后的完整代码

HTML模板

<div id="app">
  <v-app id="inspire">
    <v-card>
     <v-snackbar
        class="regiSnack"
        :timeout="0"
        :value="snackbar"
        absolute
        :multi-line="multiLine"
        top
        color="deep-purple accent-4"
        elevation="50"
        >
          This is Snackbar
          <template #actions>
             <v-btn text @click="snackbar = false"> Close </v-btn>
         </template>
     </v-snackbar>
    </v-card>
  </v-app>
</div>

JS代码

new Vue({
  el: '#app',
  vuetify: new Vuetify(),
  data () {
    return {
      snackbar: true,
      multiLine: true
    }
  },
})

修正后,页面加载时Snackbar会自动弹出,点击Close按钮即可正常关闭,满足你设置timeout=0保持显示直到手动关闭的需求。

内容的提问来源于stack exchange,提问作者Jazz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 22:45:26