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

Expo项目中Webpack+TypeScript桶文件导入出现TS2305错误

解决Expo + Webpack + TypeScript中桶文件导出成员找不到的问题

以下是针对TS2305错误的具体解决步骤:

  • 检查TypeScript配置的模块解析规则
    确保tsconfig.json的模块解析配置正确,避免路径解析异常:

    {
      "compilerOptions": {
        "baseUrl": ".",
        "moduleResolution": "Node", // 或NodeNext,根据项目环境调整
        "target": "ESNext"
      }
    }
    

    若使用NodeNext,需在项目根目录的package.json中添加"type": "module"。

  • 验证桶文件的导出逻辑
    先替换通配符导出为显式导出,排查是否为通配符解析问题:

    // folder/index.ts
    import { func1 } from "./file1";
    import { func2 } from "./file2";
    export { func1, func2 };
    

    同时确认桶文件中./file1、./file2的相对路径无拼写错误(注意大小写,Linux/macOS环境下路径区分大小写)。

  • 清理缓存并重启开发服务
    Expo和Webpack的缓存可能导致旧解析结果残留,执行以下操作:

    1. 关闭当前Expo开发服务器
    2. 删除项目根目录下的.expo文件夹
    3. 删除node_modules/.cache文件夹(若存在)
    4. 执行npx expo start --clear启动服务,强制清理缓存
  • 检查Webpack配置的模块解析规则
    若自定义了Webpack配置,确保resolve.mainFiles包含index,保证桶文件被识别为目录入口:

    // webpack.config.js 或 expo.config.js中的webpack配置
    module.exports = {
      resolve: {
        mainFiles: ['index', 'index.ts', 'index.tsx']
      }
    };
    
  • 确认文件扩展名配置
    确保所有相关文件均为.ts扩展名,若在导入时使用.ts后缀,需在tsconfig.json中开启allowImportingTsExtensions: true。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 20:51:13