- 全局组件
导入方式:在app导入
使用范围:在全局都可使用,用不用它都在那,性能不高,用起来简单
命名建议:小写单词,中间用横线间隔 - 局部组件
导入方式:在父组件内导入
使用范围:仅能在父组件内使用
命名建议:建议首字母大写的驼峰命名,用来区分普通的js变量名。在html中需要使用带中划线标签的写法,vue会自动转换语法。
组件间传值
注意
-
静态传参仅能传递字符串类型,传递不了数值类型
-
动态传参可以传递字符串、数值、布尔、数组、对象、函数、Symbol
-
注意子组件接收的props是只读的,不可修改
-
如果父组件传过来的值,子组件没有用props声明的属性且子组件顶层只有一个标签时,那么子组件顶层标签上会继承这些值。一般常用于样式和类。
如果子组件顶层有多个标签,需要在某个标签内显式声明v-bind=$attrs拿到所有Non-prop属性,或者类似于:username="$attrs.username"拿到具体属性
2022/6/5大约 2 分钟