问题
如上,用 typescript 写代码,用到了 find() 方法。遇到的问题是第二行一直报类型错误,我知道 find() 方法可能会返回 Cart 类型数据,也可以返回 undefined 值。
下面两种写法都没用起作用,第二行还是会报类型错误。这种情况我的类型接口要怎么写才不会报错。
// 写法一
const cart: Cart = this.state.cartList.find((item: Cart) => item.cartId === cartId)
cart.checked = !cart.checked
// 写法二
const cart: (Cart | undefined) = this.state.cartList.find((item: Cart) => item.cartId === cartId)
cart.checked = !cart.checked