
vue select v-on:change 事件只触发一次的原因和解决方法
在 Vue.js 中,如果你遇到了
事件处理程序中包含阻止事件传播的代码
例如:
立即学习“前端免费学习笔记(深入)”;
viewHistoryBigMood: function (event) {
event.preventDefault();
...
}preventDefault() 方法将阻止事件进一步传播,包括向父组件触发 change 事件。
其他组件或元素劫持事件
确保 change 事件不会被其他组件或元素劫持。例如,如果你将
组件内部状态发生变化
有时,组件内部状态的变化会导致 change 事件只触发一次。尝试检查组件的 data 对象,看看在事件第一次触发后是否存在任何变化。
可能的解决方法:
- 从事件处理程序中删除 preventDefault(),允许事件传播到父组件。
- 检查捕获事件的组件或元素,确保它们不会劫持 change 事件。
- 调试组件的 data 对象,查找事件第一次触发后可能发生的任何状态变化。










