v-bind="$attrs"

来源:5-14 方案落地:创建 ThemeSelect 组件

慕丝3503140

2022-04-02

父组件

子组件: $attrs接收到的属性和 defineProps接收我想是一样的,

在html中的使用,也可以$attr.rene来使用,这个用法,比起defineProps来说我觉得要方便好多,

想请老师说一下,用哪一个更好,或者是,在什么场景下用哪一个更好?

另外如果需要watch监听props的值, 是不是只有使用 useAttrs() 来处理? 就像下面这样
watch(
() => useAttrs().rene,
(a, b) => {
console.log(a, b, ‘哈哈阿航’)
},
{ deep: true, immediate: true }
)

我在官网上看到一句话: 使用 slots 和 attrs 的情况应该是很罕见的,

我又觉得watch监听props的场景还是挺多的,

写回答

1回答

Sunday

2022-04-02

你好

attr 被称为属性,通常为 非响应式数据。props 也是属性,但是通常为 响应式数据。

监听 props 可以使用  watch(() => props.data, () => {}) 监听

0
4
Sunday
回复
慕丝3503140
不需要使用 this 呀。咱们课程中有很多这样的场景。比如: const props = defineProps({}) props.xxxx
2022-04-06
共4条回复

基于Vue3新标准,打造后台综合解决方案

基于Vue3重写Vue-element-admin,打造后台前端综合解决方案

1941 学习 · 1687 问题

查看课程