这篇“typescript类型any不能分配给类型never怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“typescript类型any不能分配给类型never怎么解决”文章吧。
一、问题
在处理接口返回的数据,赋值给store中的数组时,报类型错误
data:{ cateList: []}const getCateList = async () => {const res = await fetchCateList() as anyif (res.code == 200) { this.cateList = res.data}
二、原因
res已经定义了any类型,但是cateList的类型还没有定义,默认为never
三、解决
1、方式一 (TS断言 尖括号语法)
data: { cateList: <any>[] },
2、方式二 (TS断言 as语法)
data: { cateList: [] as any },
3、方式三 (TS接口 interface)
//接口返回的数据结构如下res.data = [{id:'1',name:'xxx',level:1},{id:'2',name:'xxx',level:2},{id:'3',name:'xxx',level:3}]
//根据返回的数据结构定义对应的类型interface ICateList { id: string name: string level:number}data: { cateList: [] as ICateList[], },
以上就是关于“typescript类型any不能分配给类型never怎么解决”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。