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

Expo开发执行npm run reset-project遇500错误及文件导入问题求助

Expo reset-project 后 +not-found.tsx 报错的原因及解决解析

1. return (<>) 报错需导入 React

  • 原因:React 17+ 虽支持无需手动导入 React 即可使用 JSX,但部分场景(如旧版 TypeScript 配置、Expo 模板的特定设置)仍要求显式导入 React。<> 是 React 的 Fragment 语法糖,编译器需要识别 React 才能解析该语法。
  • 解决:在文件顶部添加代码:import React from 'react';

2. ThemedText/ThemedView 路径导入报错

  • 原因:@/components/xxx 是路径别名,需要在项目的 tsconfig.json 或 jsconfig.json 中预先配置,将 @ 映射到项目根目录。执行 npm run reset-project 后,配置文件可能被重置,导致别名失效,编译器无法定位到组件文件。
  • 解决:改用相对路径 ../components/ThemedView 导入,或者重新在配置文件中配置路径别名(例如在 tsconfig.json 的 compilerOptions.paths 中添加 "@/*": ["./*"])。

3. 图片必须使用 source={require(@/path-to-image.jpg)}

  • 原因:Expo 加载本地图片支持 require() 和 import 两种方式,但路径别名同样需要配置才能在 require() 中生效。如果别名配置正常,require(@/xxx) 可直接定位到根目录下的图片;若别名失效,也可以使用相对路径的 require('../path-to-image.jpg')。
  • 补充:require() 是运行时加载,适合动态路径或别名路径场景;import Image from '@/path-to-image.jpg' 是编译时加载,同样需要正确配置别名才能使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 04:50:16