1. 默认使用

props: {
	obj: {
		type:Object,
		default:() => ({})
	},
 	arr: {
      type:Array,
      default:() => ([])
  	}
}

2. 为什么需要通过函数的形式

因为对象和数组都是属于我们的复杂类型,在进行访问指向的时候我们使用的是对象和数组的地址,而不像基础数据类型那。

如果我们没有通过函数的形式去设置对象和数据类型的默认值,而是直接采用{}[],如果多个使用该组件的地方因为没有传递props而使用了默认值,假设其中一个地方我们修改了默认的值(不推荐,会报警告,不符合反向数据流),那么其他的地方由于指向的是同一个内存中的引用地址,其他地方的显示值也会发生修改

我们使用了函数的形式去返回,保证每次函数执行出来的都是返回一个新的对象,这样就不会出现上面所有的情况

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐