package.json
编辑页面
package.json 文件中可使用的 Expo 特定属性参考。
For the complete documentation index, see llms.txt. Use this file to discover all available pages.
package.json 是一个 JSON 文件,包含 JavaScript 项目的元数据。这是对 Expo 特定属性的引用,这些属性可以通过在 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"] } } }
autolinking
允许通过在 package.json 中使用 autolinking 属性来配置模块解析行为。
{ "expo": { "autolinking": { "nativeModulesDir": "./modules" } } }
完整参考请参见 Autolinking configuration。
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 会验证是否存在 app config 文件。如果该文件存在,则表示你的项目已配置为使用 Prebuild。
当存在 android 或 ios 目录时,EAS Build 不会将 app config 属性同步到原生项目。如果这些条件成立,Expo Doctor 会发出警告。
你可以通过在项目的 package.json 文件中添加以下配置来禁用或启用此检查:
{ "expo": { "doctor": { "appConfigFieldsNotSyncedCheck": { "enabled": false } } } }