v-model修饰符本质是语法糖,用于在事件触发时预处理输入值;vue 3中通过$attrs.modelmodifiers获取修饰符对象并手动实现逻辑,支持内置及自定义修饰符。

理解 v-model 修饰符的本质
v-model 本身是语法糖,它在不同元素上展开为不同的 prop 和事件组合。比如 <input v-model="value"> 等价于 <input :value="value">。而修饰符(如 .trim、.number、.lazy)的作用,是在事件触发时对输入值做预处理,再更新数据。
在自定义组件中支持内置修饰符
Vue 会把绑定的修饰符以对象形式暴露在组件的 $attrs 中(Vue 3)或通过 modelModifiers(Vue 2.6+)。你需要手动读取并应用这些逻辑。

