在组件封装上,两个框架差的不远。
在Vue中封装组件,用插槽的形式子组件中写好具名插槽的地位和款式,在父组件中通过插槽名传入html和js逻辑 局部。
在react中封装组件,区别于Vue的中央在于,Vue中有插槽这个语法,而react中没有。在react中的html和js逻辑局部的传递都须要借由属性组件的属性(Props)来实现。
(在Vue中插槽传值,在react中属性传值)
此外,Vue中组件的款式(css局部) 能够间接写在组件中(写在<style>标签中),而react须要独自开一份样式表。
当初要实现下图这样的一个Card组件,预留左上角、右上角、内容区等几个地位(这些地位能够传入html)
在vue中的实现 (CardWithSlot.vue 仅template局部,省略款式)
应用:
代码见:
https://github.com/DiracKeeko...
在react中的实现 (CardWithSlot.tsx 仅tsx局部,省略样式表)
应用:
代码见:
https://github.com/DiracKeeko...
完结。
同步更新到本人的语雀
https://www.yuque.com/diracke...