TypeScript提示Property ‘xxx’ does not exist on type ‘never’问题解决

Web前端 潘老师 1年前 (2021-08-13) 930 ℃ (0) 扫码查看

在使用Vue3中使用TypeScript时,根据角标引用数组元素时出现如下错误:
TypeScript提示Property 'xxx' does not exist on type 'never'问题解决

错误提示:Property ‘xxx’ does not exist on type ‘never’

其中stateformState定义代码如下:

let state = reactive({
    staplantypesArr: [],
    dynplantypesArr: [],
});
let formState = reactive({
    planType: undefined, 
});

而我报错代码部分就是想将经过筛选过滤后的得到的数组(赋值给了state.staplantypesArr数组了),然后再将state.staplantypesArr的第1个元素的planTypeCode属性赋值给formState.planType,结果就出现了如上图所见的错误,对于对于像潘老师这种专注后端,前端不咋地的人而言,不知道原因,但最终还是通过如下方案解决了:

// 计划类型
planTypes().then((arr: any) => {
    state.staplantypesArr = arr.filter((planType:any) => !planType.isDynamic);
    state.dynplantypesArr = arr.filter((planType:any) => planType.isDynamic);
    // 调用实现
    initSelectedPlanType();
});
// 新增一个方法,重点在于将赋值给重新定义的一个any类型的变量
const initSelectedPlanType = () => {
    let staArr:any = state.staplantypesArr;
    formState.planType = staArr[0].planTypeCode;
}

主要实现思路就是将 state.staplantypesArr赋值给重新定义的一个any类型的变量,然后再去获取数组元素调用属性赋值,以上就是TypeScript提示Property ‘xxx’ does not exist on type ‘never’问题解决方案,如果你有更好的解决方案,记得评论哦!


版权声明:本站所有文章,如无特殊说明,均为本站原创。转载请务必注明文章来源,谢谢支持。
本文链接:https://www.panziye.com/java/web/3460.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】