【问题标题】:How to import external typescript files in expo project如何在 expo 项目中导入外部打字稿文件
【发布时间】:2020-07-19 08:46:29
【问题描述】:

有没有办法转译和支持从 expo 项目主文件夹之外的文件夹导入?

我只想从共享文件夹中导入一些其他文件。

这是我的设置和问题:

根文件夹

有 3 个子文件夹,没有 package.json,没有 tsconfig.json,只有这些:

  • /server --> 一个nodejs rest api
  • /mobile --> 一个世博项目
  • /shared --> 一个包含很多常用打字稿文件的文件夹

移动文件夹

这个有 typescript 生成的 expo 项目。项目工作正常,直到我从 ./shared 导入一些东西。

从 expo 文件夹中的 ./shared 导入文件不起作用:(在 ./mobile fodler 中运行 npm run start

// mobile/src/screents/login
import { inject } from "../../../../shared/src/core/di"

我得到的错误是这样的:

网页:

IOS:

我的假设是找到了文件但未触发 babel/typescript 转换。我不确定在哪里可以指定这方面。

我的mobile/babel.config.js是expo生成的标准:

module.exports = function(api) {
  api.cache(true);
  return {
    presets: ['babel-preset-expo'],
  };
};

没有mobile/metro.config.js

我查看了文档并在 expo 和 metro 配置之间迷路了。

【问题讨论】:

    标签: react-native expo metro-bundler


    【解决方案1】:

    如果没有,您可以在 Expo 根项目文件夹中创建 metro.config.js 文件。可以在 Expo 文档中找到更多详细信息。

    See the Expo documentation

    不仅仅是按照 Dushyant Bansal 在 Medium.com 上的这个简单且解释清楚的教程。我遇到了和你一样的问题,它为我完成了工作。

    How to import files from outside of root directory with React Native Metro bundler

    问候,

    汤姆

    【讨论】:

      猜你喜欢
      • 2017-02-19
      • 2017-07-06
      • 1970-01-01
      • 2018-12-02
      • 2017-12-10
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多