当前位置: 首页 > 知识库问答 >
问题:

什么是TypeScript中的“Not assignable to parameter of type never”错误?

孔阎宝
2023-03-14

代码为:

const foo = (foo: string) => {
  const result = []
  result.push(foo)
}

我得到以下TS错误:

[ts]类型“string”的参数不能赋值给类型“never”的参数。

我做错了什么?这是窃听器吗?

共有2个答案

公良子轩
2023-03-14

另一种方式是:

const result = [] as  any;
柳向明
2023-03-14

您所要做的只是将result定义为字符串数组,如下所示:

const result : string[] = [];

如果不定义数组类型,则默认为never。所以当您试图添加一个字符串到它,它是一个类型不匹配,所以它抛出了您看到的错误。

 类似资料:
  • 在TypeScript中,什么是Signature?

  • 在typescript中枚举的用途是什么。如果它的目的仅仅是使代码可编辑,我们就不能使用常量来达到同样的目的吗 如果没有打字检查的好处,就不能写成。

  • Vue3 的源码使用 TypeScript 全部重构,为什么还叫做Vue.js,而不是Vue.ts?

  • 代码是: 我得到以下TS错误: "[ts]类型"string"的参数不能分配给类型"ever"的参数。" 我做错了什么?这是虫子吗?

  • 在VSCode中,我把鼠标移动在:GenerateStyle,会显示出如截图的提示,请问下: 1、(alias)是什么意思呢? 2、是对GenerateStyle做了什么吗,才会显示出这个alias? 3、我们看到还有:import GenerateStyle,请问这个在这里有什么用,原因是什么呢?

  • 问题内容: 当我阅读时:http : //golang.org/doc/effective_go.html#errors 我发现了这样一行:在这种情况下: Go 到底是什么? 问题答案: 返回错误作为第二个返回值。错误本身是一个接口 。碰巧具有方法的任何数据类型都将实现该接口并可以进行分配。 在大多数情况下,仅打印错误就足够了,但是在此示例中,您想显式处理(设备上不留空间)。该包返回在这种情况下,