This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.
如何使用独立的 Expo 模块
编辑页面
了解如何在你的项目中使用通过 create-expo-module 创建的独立模块,方法是使用 monorepo 或将包发布到 npm。
在现有项目中创建 Expo 模块的推荐方式 详见 Expo Modules API:入门 指南。本教程介绍了在现有项目中使用通过 create-expo-module 创建的模块的另外两种方法:
如果你仍希望将模块与应用分开维护,或与其他开发者共享,这些方法会很有用。
使用 monorepo
你的项目应采用以下结构:
- apps:用于存放多个项目的目录,包括 React Native 应用。
- packages:用于保存应用所使用的不同包的目录。
- package.json:根包文件,包含 Yarn workspaces 配置。
提示 要了解如何将项目配置为 monorepo,请查看 使用 monorepo 指南。
2
3
运行模块
运行其中一个应用,确保一切正常。然后,在 packages/expo-settings 中启动 TypeScript 编译器以监听变更并重新构建模块的 JavaScript:
打开另一个终端窗口,从 apps 目录中选择一个应用,并使用 --clean 选项运行 prebuild 命令。对 monorepo 中的每个应用重复这些步骤,以使用新模块。
使用以下命令编译并运行应用:
现在你就可以在应用中使用该模块了。为了测试它,请编辑应用中的 src/app/index.tsx 文件,并渲染来自 expo-settings 模块的文本消息:
完成此配置后,应用会显示文本 "Hello world! 👋"。
将模块发布到 npm
你可以将模块发布到 npm,并按照以下步骤将其作为依赖安装到项目中。
2
3
将包发布到 npm
要将你的包发布到 npm,你需要一个 npm 账户。如果你还没有,请在 npm 网站 上创建账户。创建账户后,运行以下命令登录:
进入模块根目录,然后运行以下命令将其发布:
你的模块现在将被发布到 npm,并可以通过 npm install 安装到其他项目中。
除了将模块发布到 npm 之外,你还可以通过以下方式在项目中使用它:
- 创建 tarball:使用
npm pack为模块创建 tarball,然后通过运行npm install /path/to/tarball将其安装到项目中。此方法有助于在发布之前本地测试模块,或与无法访问 npm 仓库的其他人共享模块。 - 运行本地 npm 仓库:使用 Verdaccio 等工具托管本地 npm 仓库。你可以从该仓库安装模块,这对于管理公司或组织内部包很有用。
- 发布私有包:使用 EAS Build 的私有 registry 安全地管理私有模块。
4
后续步骤
了解如何在 Expo 模块中封装第三方原生库。
一个关于创建使用 Expo Modules API 持久化设置的原生模块的教程。