解决typescript报错:不能将类型xxx分配给类型xxx

现象:

解决typescript报错:不能将类型xxx分配给类型xxx_第1张图片

 这种情况是因为组件传参时: 等号左右两边的数据类型不能严格匹配一致造成的

等号左边data, 查看一下被传参的子组件ProductList的内部data属性:

解决typescript报错:不能将类型xxx分配给类型xxx_第2张图片

解决typescript报错:不能将类型xxx分配给类型xxx_第3张图片

解决typescript报错:不能将类型xxx分配给类型xxx_第4张图片 

可以看到data的类型是 : Product[] 

而右边的shoppingCartItems来自于: redux中shoppingCart slice, 进去看一下定义:

解决typescript报错:不能将类型xxx分配给类型xxx_第5张图片

解决typescript报错:不能将类型xxx分配给类型xxx_第6张图片

 可以看到它的定义是:Array 而前面的是属性是:Product[] 

两边类型不一致。

所以只需要把后面这个的类型修改成: Array, 问题就解决了

解决typescript报错:不能将类型xxx分配给类型xxx_第7张图片

总结:针对typescript的这类报错:“不能将类型xxx分配给类型xxx”,要善于使用any属性来解决问题

你可能感兴趣的:(typescript)