setup(props,context){}
第一个参数props:
props是一个对象,包含父组件传递给子组件的所有数据。
在子组件中使用props进行接收。
包含配置声明并传入的所有的属性的对象
也就是说:如果你想通过props的方式输出父组件传递给子组件的值。
你需要使用props进行接收配置。即props:{......}
如果你未通过Props进行接受配置,则输出的值是undefined
父组件
我是子组件中的数据
为什么通过pr***.mytitle输出的值是undefined呢?
因为我们没有使用props进行接收配置。即
props:{ mytitle:{ type:Object } },
如果我们添加上接受配置
第2个参数:context,是一个对象。
里面有attrs(获取当前标签上的所有属性的对象)
但是该属性是props中没有声明接收的所有的对象。
如果你使用props去获取值,同时props中你声明了你要获取的值
则:获取的值是undefined
注意点:
attrs获取值是不需要props中没有声明接收。
第1个参数props获取值是需要props中声明接收的
有emit事件分发,(传递给父组件需要使用该事件)
有slots插槽
我是子组件中的数据
3. 子组件向父组件派发事件
我是子组件中的数据
4.优化事件派发
我们知道第2个参数context是一个对象
并且对象中有三个属性attrs,slots,emit
在事件派发的时候,直接使用emit就ok了
我是子组件中的数据
5.获取父组件传递的值
我们将使用props参数获取值
以及使用attrs获取值
子组件
我是子组件中的数据使用了props声明接收==>{{ mytitle }}
使用参数attrs获取==>{{ at***.othertitle }}
以上就是详解vue3中setup函数的参数-props和context的详细内容,更多请关注php中文网其它相关文章!
下一篇: 深入解析npm的包管理机制