美文网首页
umi、typescript问题:组件定义元组数据

umi、typescript问题:组件定义元组数据

作者: TouchMe丶 | 来源:发表于2020-05-07 10:33 被阅读0次

开发过程中出了一个tslint的校验问题。如下:


image.png

操作的是antd的一个组件RangePicker的value值。
value值默认接收moment类型的数据,并且是数组。
this.state.selectedDate就是一个moment数组。
但是却报了这个No overload matches this call错误。

不能将类型"Moment[]"分配给类型"undefined[] | null[] | [Moment] | [undefined, Moment] | [Moment | undefined] | [null, Moment] | [Moment, null] | [Moment, Moment] | null"
这样的错误

这里就要在state初始化的时候将selectedDate定义成2个Moment元素组成的元组即可,运用简单的类型断言即可。

原代码

selectedDate: [moment(new Date().getTime() - 7 * (1000 * 60 * 60 * 24)), moment(new Date().getTime() - (1000 * 60 * 60 * 24))],

修改后代码

selectedDate: [moment(new Date().getTime() - 7 * (1000 * 60 * 60 * 24)), moment(new Date().getTime() - (1000 * 60 * 60 * 24))] as [moment.Moment, moment.Moment]

相关文章

网友评论

      本文标题:umi、typescript问题:组件定义元组数据

      本文链接:https://www.haomeiwen.com/subject/adsoghtx.html