Skip to content

Variable

Variable properties

变量是设计令牌,定义了其在变量集合中的每个模式下的值。这些值可以应用于各种设计属性和原型操作,启用设计令牌功能和高级原型流程。

id

typescript
id: string [readonly]

变量的唯一标识符。

name

typescript
name: string

变量的名称。

description

typescript
description: string

变量的描述。

hiddenFromPublishing

typescript
hiddenFromPublishing: boolean

是否在发布当前文件为库时隐藏该变量。只有当 remote 为 false(例如这是一个本地变量)时才能为 true。

getPublishStatusAsync

typescript
getPublishStatusAsync(): Promise<PublishStatus>

返回当前文件中此变量的发布状态。

remote

typescript
remote: boolean [readonly]

获取当前变量是否为远程变量或本地变量。

variableCollectionId

typescript
variableCollectionId: string [readonly]

包含此变量的变量集合的 ID。

key

typescript
key: string [readonly]

与 importVariableByKeyAsync 一起使用的键。请注意,虽然此键存在于本地和已发布的变量上,但您只能导入已发布的变量。

resolvedType

typescript
resolvedType: VariableResolvedDataType [readonly]

变量的解析类型。

resolveForConsumer

typescript
resolveForConsumer(consumer: SceneNode): { value: VariableValue; resolvedType: VariableResolvedDataType }

如果此变量已绑定到消费者,则检索此变量的解析值。

setValueForMode

typescript
setValueForMode(modeId: string, newValue: VariableValue): void

为给定的模式设置变量的值。如果模式 ID 属于扩展集合,则值将在扩展上覆盖。

valuesByMode

typescript
valuesByMode: { [modeId: string]: VariableValue } [readonly]

此变量在每个模式下的值。请注意,这将不会解析任何别名。要返回所有情况下完全解析的值,请考虑使用 resolveForConsumer。

remove

typescript
remove(): void

从文档中删除此变量。

scopes

typescript
scopes: Array<VariableScope>

在 UI 中显示此变量的作用域数组。设置此属性将在不同的字段中显示/隐藏此变量选择器 UI。

codeSyntax

typescript
codeSyntax: { [platform in CodeSyntaxPlatform]?: string} [readonly]

此变量的代码语法定义。支持的平台为 'WEB'、'ANDROID' 和 'iOS'。

setVariableCodeSyntax

typescript
setVariableCodeSyntax(platform: CodeSyntaxPlatform, value: string): void

设置此变量的代码语法定义。支持的平台为 'WEB'、'ANDROID' 和 'iOS'。

removeVariableCodeSyntax

typescript
removeVariableCodeSyntax(platform: CodeSyntaxPlatform): void

从 codeSyntax 中删除给定平台。

Plugin data properties

getPluginData

typescript
getPluginData(key: string): string

使用 setPluginData 存储在节点或样式上的自定义信息。如果未存储提供键的数据,则返回空字符串。

setPluginData

typescript
setPluginData(key: string, value: string): void

允许您在任何节点或样式上存储自定义信息,对您的插件来说是私有的。您的条目(pluginId、key、value)的总大小不能超过 100 kB。

getPluginDataKeys

typescript
getPluginDataKeys(): string[]

使用 setPluginData 存储在节点或样式上的自定义信息。此操作允许您遍历存储在节点或样式上的所有私有数据。

getSharedPluginData

typescript
getSharedPluginData(namespace: string, key: string): string

使用 setSharedPluginData 存储在节点或样式上的共享数据。如果未存储提供命名空间和键的数据,则返回空字符串。

setSharedPluginData

typescript
setSharedPluginData(namespace: string, key: string, value: string): void

允许您在任何节点上存储自定义信息。您可以使用相同的命名空间和键稍后调用 getSharedPluginData 来检索它。要查找存储在节点上的特定命名空间中的所有数据,请使用 getSharpedPluginDataKeys。

getSharedPluginDataKeys

typescript
getSharedPluginDataKeys(namespace: string): string[]

使用 setSharedPluginData 存储在节点或样式上的共享数据。此操作允许您遍历存储在节点或样式上的所有共享数据。