【问题标题】:react-apollo with typescript stopped working带有打字稿的 react-apollo 停止工作
【发布时间】:2019-03-04 17:28:30
【问题描述】:

我对 apollo-react 和 typescript 有很大的问题。由于某种原因,编译开始失败(我没有改变)。我从干净的桌子开始了几次,但没有运气。这是错误,看起来很清楚,但我无法解决它。

.../node_modules/react-apollo/ApolloConsumer.d.ts
(1,8): Module '.../node_modules/@types/react/index"' has no default export.

这在我包含 ApolloProvider 时出现。

我尝试过使用 allowSyntheticDefaultImports 和 esModuleInterop 标志,但它只是遇到了新问题,而且我确信之前它没有。

-hakki

【问题讨论】:

  • 我不知道之前发生了什么,但您确实需要启用allowSyntheticDefaultImports(或esModuleInterop,这意味着它)才能使此导入工作。请启用它并将您遇到的新问题添加到问题中,以便我们解决这些问题。
  • 好吧,有人问我 'npm install @types/lodash' 我做了什么......然后我得到了 """..../node_modules/react-apollo/browser.d.ts (17,36):模块 '"..../node_modules/@types/lodash/flowRight"' 解析为非模块实体,不能是"""
  • 但我仍然相信它在没有 allowSyntheticDefaultImports/esModuleInterop 标志的情况下更早地工作......

标签: reactjs typescript graphql react-apollo


【解决方案1】:

启用esModuleInterop 后,看起来react-apollo/browser.d.ts 损坏是最近由this PR(在2.2.0 版中发布)引入的,并且今天由this PR(尚未发布)修复。在修复发布之前,您必须返回 react-apollo 版本 2.1.11(或将您的依赖项指向 git 存储库)。

【讨论】:

  • 奇迹...我再次安装了 apollo 依赖项,正如您提出的 npm i apollo-boost graphql react-apollo@2.1.11 -S 并且事情开始起作用了。实际上它现在可以在没有 esModuleInteropallowSyntheticDefaultImports 标志的情况下工作。所以我想我在某个时候更新了版本,一切都停止了。谢谢!
猜你喜欢
  • 2023-04-11
  • 2017-09-16
  • 2015-10-23
  • 2020-07-21
  • 1970-01-01
  • 2022-08-09
  • 1970-01-01
  • 2018-11-15
  • 2022-10-21
相关资源
最近更新 更多