使用npx create-expo-app创建项目无App.js,为何加载/app/(tabs)/index.tsx?
Expo项目无App.js、加载/app/(tabs)/index.tsx的原因与解决办法
没错,这就是Expo新版本更新带来的变化。
从Expo 49版本开始,npx create-expo-app命令默认采用Expo Router作为项目的路由方案,这种模式基于文件系统路由,不再用单一的App.js作为入口,而是通过/app目录下的文件结构来定义页面路由,你看到的/(tabs)/index.tsx就是默认生成的首页入口文件。你参考的视频用的是旧版Expo模板,当时默认生成的是传统的App.js入口。
有两种方式解决这个问题:
回退到旧模板项目
如果你想和视频里的项目结构完全一致,创建项目时可以指定使用传统空白模板,执行以下命令:npx create-expo-app ToDoListApp --template blank或者用更精简的基础模板:
npx create-expo-app ToDoListApp --template bare-minimum适配新的Expo Router结构
如果你想尝试新的路由方案,可以直接在/(tabs)/index.tsx中编写你的待办事项代码,也可以自定义路由结构:- 删除默认的
/(tabs)目录,在/app目录下新建index.tsx作为首页入口 - 按照文件系统路由的规则组织页面文件,比如新建
/app/todo.tsx作为待办页面,通过路径直接访问
- 删除默认的
内容的提问来源于stack exchange,提问作者fjimenez
相关产品推荐
相关产品推荐

