JsiRuntime
种类:class
实验性
这是一个实验性 API。请勿直接使用它。它可能会在未来的版本中被删除或更改。相反,请使用内部使用此 API 的 JSI API。请参阅 Microsoft.ReactNative.Cxx
共享项目中的 JsiApiContext.h
文件中的 ExecuteJsi
方法,或 Microsoft.ReactNative.IntegrationTests
项目中基于 JSI 的 TurboModules 示例。请注意,JSI 仅适用于 C++ 代码。我们计划在未来添加 .Net 支持。
属性
描述
readonly
string Description
实验性
全局
readonly
JsiObjectRef
Global
实验性
可检查
readonly
bool IsInspectable
实验性
方法
BigIntStrictEquals
bool BigIntStrictEquals
(JsiBigIntRef
left, JsiBigIntRef
right)
实验性
BigintIsInt64
bool BigintIsInt64
(JsiBigIntRef
bigInt)
实验性
BigintIsUint64
bool BigintIsUint64
(JsiBigIntRef
bigInt)
实验性
BigintToString
JsiStringRef
BigintToString
(JsiBigIntRef
bigInt, int val)
实验性
调用
JsiValueRef
Call
(JsiObjectRef
func, JsiValueRef
thisArg, JsiValueRef
args)
实验性
作为构造函数调用
JsiValueRef
CallAsConstructor
(JsiObjectRef
func, JsiValueRef
args)
实验性
克隆大整数
JsiBigIntRef
CloneBigInt
(JsiBigIntRef
bigInt)
实验性
克隆对象
JsiObjectRef
CloneObject
(JsiObjectRef
obj)
实验性
克隆属性ID
JsiPropertyIdRef
ClonePropertyId
(JsiPropertyIdRef
propertyId)
实验性
克隆字符串
JsiStringRef
CloneString
(JsiStringRef
str)
实验性
克隆符号
JsiSymbolRef
CloneSymbol
(JsiSymbolRef
symbol)
实验性
创建数组
JsiObjectRef
CreateArray
(uint32_t size)
实验性
创建数组缓冲区
JsiObjectRef
CreateArrayBuffer
(JsiObjectRef
buffer)
实验性
从Int64创建BigInt
JsiBigIntRef
CreateBigIntFromInt64
(int64_t val)
实验性
从Uint64创建BigInt
JsiBigIntRef
CreateBigIntFromUint64
(uint64_t val)
实验性
从主机函数创建函数
JsiObjectRef
CreateFunctionFromHostFunction
(JsiPropertyIdRef
funcName, uint32_t paramCount, JsiHostFunction
hostFunc)
实验性
创建对象
JsiObjectRef
CreateObject
()
实验性
使用主机对象创建对象
JsiObjectRef
CreateObjectWithHostObject
(IJsiHostObject
hostObject)
实验性
创建属性ID
JsiPropertyIdRef
CreatePropertyId
(string name)
实验性
从Ascii创建属性ID
JsiPropertyIdRef
CreatePropertyIdFromAscii
(uint8_t ascii)
实验性
从字符串创建属性ID
JsiPropertyIdRef
CreatePropertyIdFromString
(JsiStringRef
str)
实验性
从符号创建属性ID
JsiPropertyIdRef
CreatePropertyIdFromSymbol
(JsiSymbolRef
sym)
实验性
从Utf8创建属性ID
JsiPropertyIdRef
CreatePropertyIdFromUtf8
(uint8_t utf8)
实验性
创建字符串
JsiStringRef
CreateString
(string value)
实验性
从Ascii创建字符串
JsiStringRef
CreateStringFromAscii
(uint8_t ascii)
实验性
从Utf8创建字符串
JsiStringRef
CreateStringFromUtf8
(uint8_t utf8)
实验性
从Json创建值
JsiValueRef
CreateValueFromJson
(string json)
实验性
从JsonUtf8创建值
JsiValueRef
CreateValueFromJsonUtf8
(uint8_t json)
实验性
创建弱对象
JsiWeakObjectRef
CreateWeakObject
(JsiObjectRef
obj)
实验性
清空微任务
bool DrainMicrotasks
(int maxMicrotasksHint)
实验性
评估JavaScript
JsiValueRef
EvaluateJavaScript
(IJsiByteBuffer
buffer, string sourceUrl)
实验性
评估预准备JavaScript
JsiValueRef
EvaluatePreparedJavaScript
(JsiPreparedJavaScript
js)
实验性
获取并清除错误
JsiError
GetAndClearError
()
实验性
获取数组缓冲区数据
void GetArrayBufferData
(JsiObjectRef
arrayBuffer, JsiByteArrayUser
useArrayBytes)
实验性
获取数组缓冲区大小
uint32_t GetArrayBufferSize
(JsiObjectRef
arrayBuffer)
实验性
获取数组大小
uint32_t GetArraySize
(JsiObjectRef
arr)
实验性
获取主机函数
JsiHostFunction
GetHostFunction
(JsiObjectRef
func)
实验性
获取主机对象
IJsiHostObject
GetHostObject
(JsiObjectRef
obj)
实验性
获取原生状态
IReactNonAbiValue
GetNativeState
(JsiObjectRef
obj)
实验性
获取属性
JsiValueRef
GetProperty
(JsiObjectRef
obj, JsiPropertyIdRef
propertyId)
实验性
获取属性ID数组
JsiObjectRef
GetPropertyIdArray
(JsiObjectRef
obj)
实验性
获取索引处的值
JsiValueRef
GetValueAtIndex
(JsiObjectRef
arr, uint32_t index)
实验性
拥有原生状态
bool HasNativeState
(JsiObjectRef
obj)
实验性
拥有属性
bool HasProperty
(JsiObjectRef
obj, JsiPropertyIdRef
propertyId)
实验性
InstanceOf
bool InstanceOf
(JsiObjectRef
obj, JsiObjectRef
constructor)
实验性
是数组
bool IsArray
(JsiObjectRef
obj)
实验性
是数组缓冲区
bool IsArrayBuffer
(JsiObjectRef
obj)
实验性
是函数
bool IsFunction
(JsiObjectRef
obj)
实验性
是主机函数
bool IsHostFunction
(JsiObjectRef
obj)
实验性
是主机对象
bool IsHostObject
(JsiObjectRef
obj)
实验性
锁定弱对象
JsiValueRef
LockWeakObject
(JsiWeakObjectRef
weakObject)
实验性
创建Chakra运行时
static
JsiRuntime
MakeChakraRuntime
()
实验性
对象严格相等
bool ObjectStrictEquals
(JsiObjectRef
left, JsiObjectRef
right)
实验性
弹出作用域
void PopScope
(JsiScopeState
scopeState)
实验性
准备JavaScript
JsiPreparedJavaScript
PrepareJavaScript
(IJsiByteBuffer
buffer, string sourceUrl)
实验性
属性ID相等
bool PropertyIdEquals
(JsiPropertyIdRef
left, JsiPropertyIdRef
right)
实验性
属性ID转字符串
string PropertyIdToString
(JsiPropertyIdRef
propertyId)
实验性
属性ID转Utf8
void PropertyIdToUtf8
(JsiPropertyIdRef
propertyId, JsiByteArrayUser
useUtf8String)
实验性
压入作用域
JsiScopeState
PushScope
()
实验性
队列微任务
void QueueMicrotask
(JsiObjectRef
callback)
实验性
释放大整数
void ReleaseBigInt
(JsiBigIntRef
bigInt)
实验性
释放对象
void ReleaseObject
(JsiObjectRef
obj)
实验性
释放属性ID
void ReleasePropertyId
(JsiPropertyIdRef
propertyId)
实验性
释放字符串
void ReleaseString
(JsiStringRef
str)
实验性
释放符号
void ReleaseSymbol
(JsiSymbolRef
symbol)
实验性
设置错误
void SetError
(JsiErrorType
errorType, string errorDetails, JsiValueRef
value)
实验性
设置原生状态
void SetNativeState
(JsiObjectRef
obj, IReactNonAbiValue
state)
实验性
设置属性
void SetProperty
(JsiObjectRef
obj, JsiPropertyIdRef
propertyId, JsiValueRef
value)
实验性
在索引处设置值
void SetValueAtIndex
(JsiObjectRef
arr, uint32_t index, JsiValueRef
value)
实验性
字符串严格相等
bool StringStrictEquals
(JsiStringRef
left, JsiStringRef
right)
实验性
字符串转字符串
string StringToString
(JsiStringRef
str)
实验性
字符串转Utf8
void StringToUtf8
(JsiStringRef
str, JsiByteArrayUser
useUtf8String)
实验性
符号严格相等
bool SymbolStrictEquals
(JsiSymbolRef
left, JsiSymbolRef
right)
实验性
符号转字符串
string SymbolToString
(JsiSymbolRef
symbol)
实验性
符号转Utf8
void SymbolToUtf8
(JsiSymbolRef
symbol, JsiByteArrayUser
useUtf8String)
实验性
截断
uint64_t Truncate
(JsiBigIntRef
bigInt)
实验性