You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为现有React Native项目添加TypeScript遇TS1161错误求助

问题解决:TS1161 未终止正则表达式字面量错误
  • 核心问题:你的组件文件用了.ts后缀,但里面包含JSX语法,TypeScript默认不会在.ts文件中解析JSX,会把<符号误判为正则表达式的起始标记,从而抛出错误。
  • 次要问题:你的JSX结构存在语法错误,</View>闭合标签写在了return()的括号外面,这也会导致后续运行报错。

解决步骤

  1. 修改文件后缀:将HomeAq.ts重命名为HomeAq.tsx。这就是官方文档第3步要求的操作——.tsx是React/React Native中用于包含JSX的TypeScript文件后缀,告诉编译器要处理JSX语法。
  2. 修复JSX结构错误:调整return语句中的标签位置,确保闭合标签在括号内:
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({})
  1. 重新检查:运行npx tsc,此时应该不会再出现正则相关的错误。

补充说明

你的tsconfig.json配置是正确的,"jsx": "react-native"已经指定了JSX的编译方式,问题完全出在文件后缀和JSX语法结构上。之前跳过的“将JavaScript文件重命名为*.tsx”步骤,本质就是让编译器识别包含JSX的文件类型,这一步是处理JSX+TypeScript的必要操作。

内容的提问来源于stack exchange,提问作者Ann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 01:52:39