0

Expo 应用程序示例是否可以加载位于父文件夹中的模块并在我重建包时查看示例应用程序中的更改(使用 tsc -w 重建任何保存的文件)?我确切地说该模块尚未在 npm 上发布。

我已经成功地使用带有 yarn 工作区和 expo-yarn-workspaces 包的 monorepo 架构来做到这一点。但是,当您不想像 monorepo 那样发布您的包时,该怎么办?

例如,在这个 repo https://github.com/cuvent/react-native-vision-camera 在裸工作流中有一个示例 RN 应用程序,在它的 package.json 中没有提到开发的包(意味着它是没有像普通依赖一样安装)。但是在应用程序 src/App.tsx 中,该包的使用方式如下:

import { Camera, frameRateIncluded, sortFormatsByResolution, filterFormatsByAspectRatio } from 'react-native-vision-camera';

不过,react-native-vision-camera 的使用就像它已经并且通常与 yarn 或 npm 一起安装一样。它是如何工作的 ?

谢谢。

4

1 回答 1

0

最后,我找到了适合我的东西。如果需要,您可以在此处找到我的 Metro 配置: https ://github.com/grean/react-native-metro-config-app-example 有了它,您可以从 expo 应用程序访问父组件,对其进行修改和立即看到热重载的变化。在您的 expo 根应用程序目录中创建一个文件 metro.config 文件,其中包含该代码:

let config = require('@grean/react-native-metro-config-app-example/index.js');
module.exports = config

对于一个完整的例子,你可以查看这个 repo: https ://github.com/grean/react-native-scale-text

于 2021-05-28T20:48:33.120 回答