Vue.js 中 Dialog 组件的 visible 属性无法触发监听,如何通过修改组件代码解决?

自定义弹窗显示控制

在使用 Vue.js 的 Dialog 组件时,通过设置 visible 属性可以控制弹窗的显示,然而直接修改 visible 属性会导致无法触发 Dialog 内部对 visible 变化的监听。如何通过修改 Dialog 组件本身的代码解决这个问题呢?

答案:

可以使用如下代码:

  
export default { props: { visible: Boolean, }, data() { return { visibleMe: this.visible, // 初始情况下取自 prop }; }, watch: { visible(newVal) { this.visibleMe = newVal; // 从 prop 同步 visibleMe }, }, methods: { closeDialog() { this.visibleMe = false; this.$emit('update:visible', false); // 向父组件更新 prop }, }, };

在这个代码中:

  1. 使用 v-if="visibleMe" 替代 v-if="visible",以从 visibleMe 数据接收控制。
  2. 在 data() 中初始化 visibleMe 为 this.visible,在组件创建时从 visible prop 获取初始值。
  3. 添加一个 closeDialog() 方法,它将 visibleMe 设置为 false,并通过 $emit('update:visible', false) 事件更新父组件中的 visible prop。
  4. 使用 watch 来监听 visible prop 的变化,并在变化时更新 visibleMe。

通过这种方式,可以在修改 Dialog 组件内部代码的情况下实现自定义弹窗显示控制。

以上就是Vue.js 中 Dialog 组件的 visible 属性无法触发监听,如何通过修改组件代码解决?的详细内容,更多请关注昆居客【www.kunjuke.com】。

相关推荐:

索尼发布入耳式专业舞台监听耳机 IER-M500,建议零售价 1099 元

感谢网友 很宅很怕生 的线索投递! 7 月 9 日消息,SONY(索尼)今日发布入耳式专业监听耳机 IER-M500。这一型号专为舞台演出、现场监听、音乐创作场景打造,将于近期正式发售,建议零售价 1099 元人民币。IER-M500 搭载高解析微型动圈与全封闭高隔音腔体,频率响应可达 40kHz,低频兼具力度与自然感、高频更加清晰自然,而其全封闭式声学结构可有效降低外部环境噪声干扰。此款设备还附...

苹果 iPhone Air 2 再曝:面容 ID 组件缩小为 48MP 双摄腾出空间,A20 Pro 芯片

7 月 4 日消息,爆料人乔恩 · 普罗瑟(Jon Prosser)今天在最新一期 fpt.视频中为我们带来了 iPhone Air 2 最新情报,显示该机将新增第二颗后置摄像头,搭载 A20 Pro 芯片。据介绍,iPhone Air 2 将使用与初代 iPhone Air 相同的钛合金机身,定位轻薄旗舰,配备 A20 Pro 芯片,而非此前传闻的 A20 标准版。新机的芯片将采用 WMCM(注...

微软承认 Win11 某核心组件占用磁盘超 70GB 问题,6 月可选更新已改善

7 月 2 日消息,科技媒体 NeoWin 昨日(7 月 1 日)发布博文,报道称在 6 月可选更新 KB5095093(Build 26200.8737)中,微软补充说明已改进磁盘空间使用问题。微软于 6 月 23 日发布适用于 Windows 11 24H2 和 25H2 的累积更新,重点提升文件管理器响应速度,微软随后于 6 月 29 日补充说明,在常规更新中还改进 CapabilityAc...

《守护花之窗》全结局触发条件方法

守护花之窗全结局触发条件是什么?如果你曾接触过这款作品,应该已经了解到它采用多线叙事结构,玩家的每个决定都会影响故事走向,最终导向截然不同的结局。其中,“守护花之窗”作为核心结局体系之一,包含三个极具创意的隐藏分支——永恒花窗、次元种花人与数据洪流。它们不仅在触发逻辑上各具特色,更融合了收集、现实联动与时间沉淀等多元设计维度。下面将逐一解析三大结局的具体解锁条件与关键步骤。 《守护花之窗》全结局触...

《谍惊蛰》舞厅惨案触发攻略

谍惊蛰舞厅惨案怎么触发?从目前的信息来看,这次所提到的舞厅惨案是属于游戏里面的一个坏结局。对于想要打通全结局的玩家来说,这是咱们必须要前往进行获取到的一个结局之一。接下来咱们便来说一下这个结局的触发条件到底是什么。之后玩家只需要跟着文章提示来进行选择,便可以触发结局了。 《谍惊蛰》舞厅惨案触发攻略 结局触发条件是在1941.10.27,这一天会出现一个米高梅舞厅行动,这个便是舞厅惨案的触发场景了。...

《王者万象棋》连胜经验触发攻略

王者万象棋连胜经验怎么触发?王者万象棋因为其独有的玩法以及深厚的战略性,得到了很多玩家的喜爱和关注。以下就是王者万象棋连胜经验触发攻略,连胜不但是对玩家技能的考验,也是获得游戏资源的重要方式。 《王者万象棋》连胜经验触发攻略 连胜机制决定着金币奖励的获得,在王者万象棋里,玩家要同时考虑比赛的结果以及自身所采取的策略。最基本的奖励就是玩家连续赢3局或者连败3局时,系统会给玩家发金币。如果玩家连胜或者...

《守护花之窗》结局触发攻略

守护花之窗结局怎么触发?如果大家了解过这款游戏,那自然就会知道它会拥有多重结局的玩法。不一样的选择,不同的玩法路径,那最终就会走向风格迥异的故事,来看一下守护花之窗结局如何才可以解锁?尤其是三大隐藏结局,里面就会藏着很多的惊喜以及巧妙的构思。下面就为大家来详细的介绍一下具体的解锁方法是什么? 《守护花之窗》结局触发攻略 第一个就是永恒花窗,想要解锁,那么第一个任务就在于收集其代表四季的四种花卉。分...

Wooting 80HE键盘游戏体验:磁轴快速触发在FPS里是降维打击

磁轴键盘能提升FPS胜率,关键在Rapid Trigger、动态键程、8KHz回报率、模拟摇杆及磁玉轴静音等五维调校,参数不当反致误触。 如果您在《CS2》《无畏契约》或《绝地求生》等FPS游戏中频繁遭遇急停延迟、穿烟失误或小碎步节奏断裂,则很可能是传统机械轴的物理触发行程限制了操作上限。Wooting 80HE搭载霍尔效应磁轴,支持0.1mm精度可调触发与Rapid Trigger(快速触发)技...