将 TypeScript 添加到现有 ReactNative 项目时出现问题

Problem Adding TypeScript to existing ReactNative Project

提问人:Ann 提问时间:11/17/2023 更新时间:11/17/2023 访问量:27

问:

所以,我最近决定最好在我的 ReactNative 项目的某些部分使用 TypeScript,我在互联网上搜索了一下,看看这是否可行,我发现是的。

我仔细地遵循了 ReactNative 文档的“将 TypeScript 添加到现有项目”,除了第 3 项,即“将 JavaScript 文件重命名为 *.tsx”,因为我不理解它并且很害怕。

但问题是,我在 TypeScript 中启动了一个屏幕文件,但我得到了对我来说毫无意义的荒谬错误。例如:

import { StyleSheet, Text, View } from 'react-native'
import React from 'react'

const HomeAq = () => {
  return (
    <View>
      <Text>HomeAq</Text>
  )
    </View>
}

export default HomeAq

const styles = StyleSheet.create({})

当我跑去检查它时,我得到:npx tsc

src/Screens/HomeAq.ts:7:21 - error TS1161: Unterminated regular expression literal.

7       <Text>HomeAq</Text>
  

src/Screens/HomeAq.ts:8:7 - error TS1161: Unterminated regular expression literal.

8     </View>
        


Found 2 errors in the same file, starting at: src/Screens/HomeAq.ts:7

我的tsconfig.json文件似乎是可以接受的:

{
  "extends": "@tsconfig/react-native/tsconfig.json",
  "compilerOptions": {
    "target": "esnext",
    "module": "commonjs",
    "jsx": "react-native",
    "strict": true,
    "esModuleInterop": true
  },
}

我尝试再次运行安装命令,重新加载 VSCode 一百万次,多次检查 tsconfig 文件,创建数百个新的 TypeScript 文件,我什至检查node_modules看看那里是否发生了异常,但什么都没有。请帮忙

javascript typescript 反应原生

评论

0赞 Shanu T Thankachan 11/17/2023
您是否安装了 TypeScript @types/React @types/react-native ?

答:

0赞 Ali Nauman 11/17/2023 #1

使用 TypeScript 时,任何具有 JSX 代码的文件都需要有扩展名。 将不起作用,这似乎是您从错误消息中使用的。重命名所有包含 JSX 代码的文件,以修复您遇到的错误。.tsx.ts.tsx