深入理解Vue组件三——组件参数校验与props特性

组件参数校验

即子组件可以对父组件传递过来的值做一些约束

校验时须注意此时的props是一个对象而不是数组

如下图,父组件向子组件传递的content参数必须是字符串类型

深入理解Vue组件三——组件参数校验与props特性

父组件向子组件传递的content参数可以是字符串类型或数字类型

深入理解Vue组件三——组件参数校验与props特性

当然,父组件也可以不传值,让子组件使用初始值

required为false时表示父组件可以不传content值,为true时必须传content值

required为false可以使用default自定义content的值,但当父组件传递content值时,子组件自定义的值便会失效

深入理解Vue组件三——组件参数校验与props特性

我们还可以用校验器做一些更复杂的校验

深入理解Vue组件三——组件参数校验与props特性

props特性

当父组件调用子组件时,向子组件传递属性,且刚好子组件在props中声明了这个属性,即触发props特性

props特性特点:

父组件向子组件传递的属性不会在DOM结构中显示,且子组件可以直接使用这个属性中的内容

非props特性

当父组件调用子组件时,向子组件传递属性,子组件在props中没有声明这个属性,即触发非props特性

非props特性特点:

父组件向子组件传递的属性会在DOM结构中显示,且子组件不能使用这个属性中的内容