【问题标题】:TypeScript not parsing react-native-web codeTypeScript 不解析 react-native-web 代码
【发布时间】:2020-04-27 09:00:06
【问题描述】:

已经尝试了建议 herehere 没有运气

我有一个目录结构如下的项目:

.
  - /app
  - /web

app 是一个 React Native 应用程序(手动创建,而不是 create-react-native-app)。

web 是使用 create-react-app 创建的 React 应用。

两者都使用 TypeScript。

我正在尝试使用react-native-webweb 应用程序中渲染来自app 的组件,但是当我收到此错误时,TypeScript 似乎没有解析该文件:

You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| 
> export type Props = {

鉴于 TypeScript 在 appweb 中独立工作,我不确定我缺少什么。该项目的一个小问题是,因为create-react-app 不允许从它自己的src 文件夹外部进行相对导入,所以我不得不在web 目录中使用npm link appapp 进行符号链接,以便导入应用组件。

不确定这是否会导致问题,但我很困惑,所以任何建议都将不胜感激。

【问题讨论】:

  • 为了理智,您是否尝试过直接在应用程序中复制而不是符号链接并查看是否有效?我遇到了反应脚本和其他实用程序没有按照您认为的方式处理链接的问题。
  • @zero298 你的意思是把它复制到node_modules?只是试了一下,但没有运气:(虽然好主意-谢谢!

标签: reactjs typescript react-native react-native-web


【解决方案1】:

解决方案最终是将ts-loader 添加到我的 React for web 应用程序的 webpack 配置中。由于create-react-app 不允许修改其配置文件,这一点变得稍微困难​​一些,但我可以使用react app rewired 这样做

我还必须将 TypeScript 的 noEmit 更改为 false 以确保 tsc 用于编译和类型检查(也必须在 react-app-rewired 中执行此操作,因为 CRA 会覆盖 tsconfig.json 中的设置如果您尝试更改它)。

鉴于 TypeScript 在 Web 和移动应用程序中单独解析得非常好,我仍然有点困惑为什么需要这样做。

【讨论】:

    猜你喜欢
    • 2019-08-09
    • 2020-04-29
    • 1970-01-01
    • 1970-01-01
    • 2021-01-31
    • 1970-01-01
    • 2016-02-04
    • 1970-01-01
    • 2017-10-21
    相关资源
    最近更新 更多