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 start和npx expo-doctornpx expo install(在安装该库的新版本或使用--check或--fix选项时)
通过在 package.json 文件中的 install.exclude 数组里指定该库,你可以将其从版本检查中排除:
{ "expo": { "install": { "exclude": ["expo-updates", "expo-splash-screen"] } } }
doctor
允许配置 npx expo-doctor 命令的行为。
reactNativeDirectoryCheck
默认情况下,Expo Doctor 会将你项目中的包与 React Native directory 进行校验。此检查会对不包含在 React Native Directory 中的包列表发出警告。
你可以通过在项目的 package.json 文件中添加以下配置来自定义此检查:
{ "expo": { "doctor": { "reactNativeDirectoryCheck": { "enabled": true, "exclude": ["/foo/", "bar"], "listUnknownPackages": true } } } }
默认情况下,此检查已启用,并且会列出未知包。
appConfigFieldsNotSyncedCheck
Expo Doctor 会检查你的项目是否包含诸如 android 或 ios 这样的原生项目目录。如果这些目录存在,但未在你的 .gitignore 或 .easignore 文件中列出,Expo Doctor 会验证是否存在应用配置文件。如果该文件存在,则表示你的项目已配置为使用 Prebuild。
当存在 android 或 ios 目录时,EAS Build 不会将应用配置属性同步到原生项目。如果这些条件为真,Expo Doctor 会发出警告。
你可以通过在项目的 package.json 文件中添加以下配置来禁用或启用此检查:
{ "expo": { "doctor": { "appConfigFieldsNotSyncedCheck": { "enabled": false } } } }