


















这是一个创建于 469 天前的主题,其中的信息可能已经有所发展或是发生改变。
本人之前由于长期写 react ,更倾向于 props 模式也就是直接把 onChange 作为参数,但平时还是老老实实遇到事件函数就用 emit 传递
最近 ai 告诉我 props 不是最佳实践,emit 是最佳实践,可我用 cursor 给我生成的代码清一色都是 props 模式,给我整不会了
其实我感觉用 Vue3 tsx 的话,什么 v-model 和 emit 这些都没必要了,和 react 一样 props 到底就好了
2 ByteRan 2025 年 3 月 3 日vue2 vue3 都是 emit |
3 zzh2036 2025 年 3 月 3 日vue3 文档,只是推荐使用。 |
4 paopjian 2025 年 3 月 3 日为的不是单向数据流么, 一切变动都有缘由 |
5 chairuosen 2025 年 3 月 3 日props 优点是 async 一下可以知道异步执行结束再继续,缺点是需要判断回调存在 |
6 jeepc 2025 年 3 月 3 日直接用 vue3.4 的双向绑定特性吧 |
7 wangtian2020 2025 年 3 月 3 日父调用子 子 expose 一个方法,比如 openDialog 父直接 ref 用子引用调用方法,一次性传参不要用 props ! |
8 charlie21 2025 年 3 月 3 日传递事件用 emit 如果想传递 event handler, 用 props ``` function saveGroup (groupDetails: { name: string | null, users: Record<string, string[]> }, createNew: boolean = false) { export default defineComponent({ ``` |
9 Zzzz77 2025 年 3 月 3 日看中代码质量,追求代码可维护性和可读性的话,更应该用 emit 但是话又说回来,如果是大面积直接用 AI 生成代码了,也就无所谓用什么/怎么用了,最后结局都是 AI 维护,能跑就行。 |
11 gotOwt 2025 年 3 月 3 日1 、props (父传子, 一般是变量) |
12 wu67 2025 年 3 月 3 日讲真, 个人认为子组件的数据, 子组件自己逻辑处理然后 emit 传递出来才是正解, 父组件传个方法进去简直就像邪道.... |
13 Melting 2025 年 3 月 3 日我问 AI 也是说 props 毕竟符合单项数据流,而且可以 props 类型检测也比较清晰,不过 emit 是 vue 双向数据的特色,习惯了感觉也好用,传 function 来获取子组件的值总感觉怪怪的 |
14 abc1310054026 2025 年 3 月 3 日这我之前写组件的时候碰到过,其实 emit 和 props 是有区别的。 1. emit 更类似 DOM 的 dispatchEvent 机制,只管派发事件。如果你关心事件的返回值 emit 是无法获取返回值的。 |
15 gouflv 2025 年 3 月 3 日 via iPhoneemit 可以在 devtool 看到日志,props 不行。 |
16 FlashEcho 2025 年 3 月 3 日props 父传子,emit 子传父,vue 相对 react 来说,组件通信方式太多了,不像 react 很强调单项数据流,我感觉都行 |
17 leokun 2025 年 3 月 4 日用 emit ,理由是 emit.update:state + props.state 支持 v-model ,并且 defineModel 宏也是这样做的(官方已经教你了) |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。