<view>一个类似 HTML <div> 的容器元素。与 <div> 类似,<view> 是一个多功能的容器元素,可以容纳其他元素,并作为构建布局的基础。所有 <view> 上可用的属性、事件和方法都可以被其他元素使用。


属性名和属性值用于描述元件的行为和外观。
name用来指定组件的名字,一般是供 native 通过 findViewByName 来从 native 侧操作对应的节点。
id用来指定组件唯一的身份标识,可供前端 API 来查找并操作对应的节 点,比如 invoke。
style用于在元件上应用行内(inline)样式。
class用于为元件指定一个或多个类名,这些类名可以在 CSS 中使用来应用样式。
className ReactLynx在 ReactLynx 中请使用 className 来设置 CSS 的类名,用法同 class。
data-*用于为元件指定额外的信息,这些信息可以在 Event 中获取。
flatten Android only只有 Android 平台可以生效,用来强制将特定的节点创建对应的 Android View。
exposure-id指定目标节点是否需要监听曝光/反曝光事件。
exposure-scene指定目标节点的曝光场景,与 exposure-id 一起用于对需要监听曝光的节点进行唯一标识。
exposure-ui-margin-*指定曝光检测中目标节点自身的边界缩放值,影响目标节点的视口交叉判断,每一个节点可以有自己的自身边界缩放值。
Android 和 iOS 平台都需要对当前节点设置 enable-exposure-ui-margin,否则不生效。HarmonyOS 平台不需要设置enable-exposure-ui-margin 即可生效。
exposure-screen-margin-*指定曝光检测任务中目标节点参考的屏幕边界缩放值,影响目标节点的视口交叉判断,每一个节点可以有自己的屏幕边界缩放值。
Android 和 iOS 平台都需要对当前节点设置 enable-exposure-ui-margin,否则正值表示目标节点自身边界缩放值,负值表示屏幕边界缩放值。HarmonyOS 平台不需要设置enable-exposure-ui-margin 即可生效。
exposure-area指定目标节点可以触发曝光事件的视口交叉比例,大于该比例时触发曝光事件,小于该比例时触发反曝光事件,默认目标节点露出即触发曝光事件。
enable-exposure-ui-margin指定目标节点是否支持 exposure-ui-margin-* 属性。
设置为 true 会改变 Android 和 iOS 平台 exposure-screen-margin-* 的行为,可能导致可滚动容器的懒加载失效。
enable-exposure-ui-clip指定曝光检测任务中是否考虑父节点的视口裁剪。当设置为 true 时,父节点视口外的节点无法触发曝光,当设置为 false 时,父节点视口外的节点可以触发曝光。
默认情况下,曝光检测只考虑可滚动的父级节点的视口裁剪,其他有宽高且 overflow: visible 的父级节点视口裁剪对曝光检测无影响。通过给这些父级节点设置 enable-exposure-ui-clip 可以实现更加合理的视口裁剪判断。
accessibility-element设置节点是否支持无障碍。
accessibility-label设置节点语音播报的内容。
如果 <text/> 节点不设置该属性,则 <text/> 节点默认 accessibility-label 是 <text/> 的内容。
当一个节点开启 accessibility-element 属性后,建议同时设置 accessibility-label,这样可以更清楚地表达当前节点的含义。
accessibility-trait设置节点的类型特征。系统对不同类型的节点,播放内容会有特定的补充。
accessibility-elements自定义子节点的聚焦顺序。该属性设置在父节点上,其子节点的聚焦顺序会根据 accessibility-elements 属性指定子节点 id 的顺序进行聚焦。
如果父节点设置了 accessibility-elements 属性,那么仅可访问 accessibility-elements 属性指定 id 的子节点,其他子节点则不可以聚焦。
accessibility-elements-a11y作用等同于 accessibility-elements, 但是对应的 id 是 a11y-id。
accessibility-elements-hidden标记当前节点及其所有子节点都不会成为无障碍节点。
accessibility-exclusive-focus该属性可以被任何节点设置,在无障碍模式下,顺序导航只会聚焦到这些节点下的子节点。
使用场景:解决弹窗蒙层焦点穿透问题:可以给蒙层节点设置该属性为 true,使得焦点在蒙层节点内部循环,不会穿透到蒙层下其他节点。
a11y-id区别于 id,用于单独标识无障碍节点。
ios-platform-accessibility-id iOS only用于指定 iOS 中一个 UIView 的无障碍标识符,仅限平台层无障碍框架接入时才需使用。
user-interaction-enabled指定目标节点及其子节点是否能够响应 Lynx 的触摸事件,该属性不会影响平台层手势(比如 scroll-view 的滚动)。
推荐使用 pointer-events 代替 user-interaction-enabled