ReactInstanceSettings
种类:class
提供创建 React 实例的设置。
属性
BundleRootPath
string BundleRootPath
默认值: ms-appx:///Bundle/
用于 bundle 位置的基路径。
ByteCodeFileUri
string ByteCodeFileUri
将其设置为应用程序具有写入权限的位置,以便成功缓存字节码。请参阅 EnableByteCodeCaching。请注意,目前尚未为 UWP 应用程序实现字节码生成。
DebugBundlePath
string DebugBundlePath
从 bundle 服务器(例如 metro)加载时,这是将从服务器请求的路径。如果未提供此项,则使用 JavaScriptBundleFile 的值。
DebuggerBreakOnNextLine
bool DebuggerBreakOnNextLine
对于直接调试,控制是否在下一行执行的 JavaScript 上中断。这有助于调试 JavaScript bundle 加载早期出现的问题。注意:目前使用的 Chakra JS 引擎不支持此功能。作为替代方案,您可以在 bundle 的开头添加 debugger 关键字。
DebuggerPort
uint16_t DebuggerPort
默认值: 9229
启用 UseDirectDebugger 时,这控制 JavaScript 引擎调试器将运行的端口。
DebuggerRuntimeName
string DebuggerRuntimeName
调试时与 JavaScript 运行时关联的名称。此名称将显示在 edge://inspect 或其他调试器中要附加的 JavaScript 运行时列表中。
EnableByteCodeCaching
bool EnableByteCodeCaching
默认值:false
对于支持字节码生成的 JS 引擎,这控制是否在首次加载 JavaScript bundle 时生成字节码。由于 JavaScript 将从字节码而不是原始 JavaScript 加载,因此应用程序的后续运行将更快。ByteCodeFileUri 必须设置为应用程序具有写入权限的位置,以便成功缓存字节码。请注意,目前尚未为 UWP 应用程序实现字节码生成。
EnableDeveloperMenu
bool EnableDeveloperMenu
已弃用:此属性已由
UseDeveloperSupport替代。在版本 0.63 中,这两个属性将执行相同的功能。它将在未来版本中移除。
这控制此实例是否可用于各种开发人员体验功能。特别是开发人员菜单和默认的 RedBox 体验。
EnableJITCompilation
bool EnableJITCompilation
默认值:true
控制 JavaScript 引擎是否使用 JIT 编译的标志。
JSIEngineOverride
JSIEngine JSIEngineOverride
默认值: JSIEngine.Chakra
将与 React 实例一起使用的 JSIEngine 覆盖。为了使覆盖生效,必须使用该引擎的支持编译 Microsoft.ReactNative。
JavaScriptBundleFile
string JavaScriptBundleFile
默认值: index.windows
要加载的 JavaScript bundle 文件的名称。这应该是相对于 BundleRootPath 的路径。在查找 bundle 文件时,.bundle 扩展名将附加到末尾。
NativeLogger
LogHandler NativeLogger
将作为 global.nativeLoggingHook 挂钩到 JavaScript 实例中的函数。这允许为 JavaScript 的控制台实现提供本机挂钩。如果未设置此项,则在调试版本中日志将输出到本机调试输出,在发布版本中则不执行任何操作。
Notifications
readonly IReactNotificationService Notifications
获取 IReactNotificationService 以在组件和应用程序之间发送通知。使用 IReactContext.Notifications 从本机组件或视图管理器访问此 IReactNotificationService。
PackageProviders
readonly IVector<IReactPackageProvider> PackageProviders
获取 IReactPackageProvider 列表。将 IReactPackageProvider 的实现添加到此列表,以定义要包含在 React 实例中的其他本机模块和自定义视图管理器。自动链接会自动将 IReactPackageProvider 添加到应用程序的 PackageProviders。
Properties
readonly IReactPropertyBag Properties
获取 IReactPropertyBag 以在组件和应用程序之间共享值。使用 IReactContext.Properties 从本机组件和视图管理器访问此 IReactPropertyBag。
RedBoxHandler
IRedBoxHandler RedBoxHandler
提供扩展点以允许在 react 实例中进行自定义错误处理。有关详细信息,请参阅 IRedBoxHandler。
SourceBundleHost
string SourceBundleHost
默认值: localhost
当使用 UseFastRefresh、UseLiveReload 或 UseWebDebugger 时,这是将从中加载 bundle 的服务器主机名。
SourceBundlePort
uint16_t SourceBundlePort
默认值: 8081
当使用 UseFastRefresh、UseLiveReload 或 UseWebDebugger 时,这是将从中加载 bundle 的服务器端口。
UIDispatcher
IReactDispatcher UIDispatcher
控制 React 实例将使用的主 UI 调度程序。如果 ReactInstanceSettings 对象最初是在 UI 线程上创建的,则此项将默认为该线程。此处提供的值将通过 IReactContext.UIDispatcher 提供给本机模块和视图管理器。
UseDeveloperSupport
bool UseDeveloperSupport
这控制此实例是否可用于各种开发人员体验功能。特别是,它启用开发人员菜单、默认的 RedBox 和 LogBox 体验。
UseDirectDebugger
bool UseDirectDebugger
在 JavaScript 引擎中启用调试(如果支持)。对于 Chakra,这允许使用 Visual Studio -> 附加到进程 (脚本) 在应用程序中直接调试 JS 运行时。
UseFastRefresh
bool UseFastRefresh
控制实例首次加载实例时是否触发热模块重新加载逻辑。大多数编辑应该在一两秒内可见,而无需实例重新加载。不兼容的更改仍然会导致完全重新加载。有关 Fast Refresh 的更多信息,请参阅 Fast Refresh。
UseLiveReload
bool UseLiveReload
已弃用:对于一般用途,此功能已由
UseFastRefresh替代。
启用实时重新加载以从 React Native 打包器加载源 bundle。文件保存时,打包器将触发重新加载。
UseWebDebugger
bool UseWebDebugger
控制实例 JavaScript 是否在远程环境(例如浏览器)中运行。默认情况下,这是使用导航到 https://:8081/debugger-ui 的浏览器,由 Metro/Haul 提供服务。React Native 实例加载后,调试将立即开始。
构造函数
ReactInstanceSettings
ReactInstanceSettings()
Events
InstanceCreated
InstanceDestroyed
类型: InstanceDestroyedEventArgs