如下图,我只是简单的定义了两个 props,其中 tabLists 的类型是一个数组,但是 TS 为什么会报错呢?
错误信息如下
是我哪里理解的又问题吗?
-------------根据采纳的答案,已经解决该问题-------------
使用起来和 普通的 props 毫无任何差异
如下图,我只是简单的定义了两个 props,其中 tabLists 的类型是一个数组,但是 TS 为什么会报错呢?
错误信息如下
是我哪里理解的又问题吗?
-------------根据采纳的答案,已经解决该问题-------------
使用起来和 普通的 props 毫无任何差异
6 回答3.1k 阅读✓ 已解决
8 回答4.8k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
5 回答2.9k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
解决方法:
在默认值对象中将
['1', '2']
改为() => ['1', '2']
,使用函数形式原因:
定义的类型
any[]
编译为运行时prop
类型是Array
,在运行时prop的Array
类型默认值都是使用函数来定义,对象类型也是如此。可以看源码中怎么定义这些类型的:简单类型可以直接写,复杂类型定义为方法