【问题标题】:TypeScript: Can not retrieve the type of property of another typeTypeScript:无法检索另一种类型的属性类型
【发布时间】:2021-07-02 15:05:51
【问题描述】:

我正在使用 create-react-app 及其打字稿模板,但是当尝试检索 'GenericAsyncThunk' 中的属性 'pending' 的类型时,就像在 redux-toolkit docs 中一样:

type PendingAction = ReturnType<GenericAsyncThunk["pending"]>;

我收到一个错误:Parsing error: Unexpected token, expected "]"

编辑:看起来错误只出现在我的机器上并且在CodeSandbox 中工作。使用命令npm start 运行项目时会出现错误。这是完整的输出:

关于如何解决这个问题的任何建议?

【问题讨论】:

  • 可以用单引号试试吗?
  • 很遗憾,没有帮助。
  • 请添加孔代码。
  • 用更多代码更新了问题。

标签: reactjs typescript create-react-app redux-thunk redux-toolkit


【解决方案1】:

可能实际的解析错误在文件中稍早一些,并且它报告的行不是有错误的行,而是它必须放弃的行,因为它没有任何进一步的意义文件。

尝试删除此结构之前的元素,或将此结构移到页面上方,看看您是否可以证明该理论。

【讨论】:

  • 我使用我现在添加到问题中的代码作为设置可重用异步请求缩减程序的助手。我尝试移除reducer,但应用运行时仍会抛出错误。
  • 必须添加另一条评论,因为我无法编辑前一条。删除使用可重用reducer的代码可以消除错误,但是服务器也必须重新启动,简单的刷新并不能消除错误。
  • 但是该代码没有显示错误,对吧?当您说“我遇到错误”时,您运行什么命令来获得错误,哪个工具元素会打印出该错误?我们需要更多的继续。此外,您距离 CodeSandbox 中的完整示例只有 2 种类型。尝试从 Typescript 游乐场单击 Export > Open in CodeSandbox 并完成工作?只要 "./@types/types";缺少它不会完全工作。 CodeSandbox 允许创建和导入多个文件以及任何 npm 模块。如果它在那里工作,那是你的机器或配置有问题而不是代码。
  • 感谢您的建议。将尽可能地尝试。
  • 刚刚尝试在 CodeSandbox 中运行代码并没有出现任何错误,但是从平台下载代码并在本地运行后,我遇到了与以前相同的错误。我相应地更新了问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-10
  • 1970-01-01
  • 1970-01-01
  • 2010-09-19
  • 2020-01-29
  • 2021-06-13
  • 1970-01-01
相关资源
最近更新 更多