Reference version

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 } } } }