Reference version

This is documentation for the next SDK version. For up-to-date documentation, see the latest version (SDK 55).

package.json

编辑页面

package.json 文件中可使用的 Expo 特定属性参考。


For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

package.json 是一个 JSON 文件,包含 JavaScript 项目的元数据。这是对可在 package.json 文件中使用的 Expo 特定属性的说明。

install.exclude

以下命令会对项目中安装的库执行版本检查,并在库的版本与 Expo 推荐的版本不同时时给出警告:

  • npx expo startnpx expo-doctor
  • npx expo install(在安装该库的新版本或使用 --check--fix 选项时)

通过在 package.json 文件中的 install.exclude 数组里指定该库,你可以将其从版本检查中排除:

package.json
{ "expo": { "install": { "exclude": ["expo-updates", "expo-splash-screen"] } } }

autolinking

允许通过在 package.json 中使用 autolinking 属性来配置模块解析行为。

完整参考请参见 Autolinking configuration

doctor

允许配置 npx expo-doctor 命令的行为。

reactNativeDirectoryCheck

默认情况下,Expo Doctor 会将你项目中的包与 React Native directory 进行校验。此检查会对不包含在 React Native Directory 中的包列表发出警告。

你可以通过在项目的 package.json 文件中添加以下配置来自定义此检查:

package.json
{ "expo": { "doctor": { "reactNativeDirectoryCheck": { "enabled": true, "exclude": ["/foo/", "bar"], "listUnknownPackages": true } } } }

默认情况下,此检查已启用,并且会列出未知包。

appConfigFieldsNotSyncedCheck

Expo Doctor 会检查你的项目是否包含诸如 androidios 这样的原生项目目录。如果这些目录存在,但未在你的 .gitignore.easignore 文件中列出,Expo Doctor 会验证是否存在应用配置文件。如果该文件存在,则表示你的项目已配置为使用 Prebuild

当存在 androidios 目录时,EAS Build 不会将应用配置属性同步到原生项目。如果这些条件为真,Expo Doctor 会发出警告。

你可以通过在项目的 package.json 文件中添加以下配置来禁用或启用此检查:

package.json
{ "expo": { "doctor": { "appConfigFieldsNotSyncedCheck": { "enabled": false } } } }