<Input>
一个适用于 ReactLynx 的无样式输入框组件,提供文本输入和键盘感知基础能力。
输入框组件,支持受控、非受控及键盘避让能力,单行输入使用 <Input>,多行输入使用 <TextArea>。
基础用法
使用 <Input> 渲染单行输入框,使用 <TextArea> 渲染多行文本域。
使输入框抬起以避让键盘
通过自动调整视图来防止屏幕键盘遮挡输入框
结构
API
TextAreaProps
bouncesiOS
输入框是否开启 iOS bounces 效果
classNameiOSAndroidHarmony
类名
confirmTypeiOSAndroidHarmony
输入框确认按钮类型
defaultValueiOSAndroidHarmony
输入框默认值
idiOSAndroidHarmony
输入框 id
inputFilteriOSAndroidHarmony
输入框内容过滤正则表达式
lineSpacingiOSAndroid
输入框行间距
maxLengthiOSAndroidHarmony
输入框最大长度
maxLinesiOSAndroidHarmony
输入框最大输入行数
onBluriOSAndroidHarmony
输入框失焦事件
onConfirmiOSAndroidHarmony
输入框确认按钮点击事件
onFocusiOSAndroidHarmony
输入框聚焦事件
onInputiOSAndroidHarmony
输入框内容改变事件
onSelectionChangeiOSAndroidHarmony
输入框选择范围改变事件
placeholderiOSAndroidHarmony
输入框占位符
readonlyiOSAndroidHarmony
输入框是否可交互
ref
showSoftInputOnFocusiOSAndroidHarmony
输入框是否聚焦时显示软键盘
styleiOSAndroidHarmony
样式
typeiOSAndroidHarmony
输入框内容类型
valueiOSAndroidHarmony
输入框受控值
KeyboardAwareTriggerProps
childreniOSAndroidHarmony
输入框键盘感知组件的子元素
classNameiOSAndroidHarmony
类名
offsetiOSAndroidHarmony
输入框键盘感知组件的额外偏移量, 单位是 px
styleiOSAndroidHarmony
样式
KeyboardAwareRootProps
androidStatusBarPlusBottomBarHeightAndroid
需要设置 Android 状态栏高度和底部导航栏的高度,如果是沉浸式状态栏,则只需传入底部导航栏的高度
childreniOSAndroidHarmony
输入框键盘响应组件的子元素
forceAttachiOSAndroidHarmony
是否强制吸附到键盘上方
KeyboardAwareResponderProps
androidTouchSlopAndroid
Android 触摸识别模式,当处于支持 'paging' 模式的元件中时,需要开启 'paging' 模式。
asiOSAndroidHarmony
输入框键盘响应组件的根元素类型
bounceableiOSAndroid
启用弹性效果
bounceableOptionsiOSAndroid
弹性效果的参数
childreniOSAndroid
scroll-view 的子元素。classNameiOSAndroidHarmony
类名
enableScrolliOSAndroidHarmony
启用滚动。
enableScrollMonitoriOSAndroidHarmony
启用滚动监控。
estimatedItemStyleiOSAndroid
需要设置 items 的预计高度和宽度。
exposureBottomiOSAndroid
曝光屏幕下方边距
exposureIDiOSAndroidHarmony
用于全局曝光的 exposure-id
exposureLeftiOSAndroid
曝光屏幕左侧边距
exposureRightiOSAndroid
曝光屏幕右侧边距
exposureSceneiOSAndroidHarmony
用于全局曝光的 exposure-scene
exposureTopiOSAndroid
曝光屏幕上方边距
firstScreenItemCountiOSAndroid
懒加载时预计的第一页项数。剩余的子元素会基于曝光状态完成渲染。当此预估较小时,可能会导致第一屏出现空白现象。
iOSBouncesiOSAndroid
开启iOS上的回弹效果。如果想在安卓上使用,请参考bounceableOption。如果设置了bounceableOption,iOSBounces属性将失效。
lazyiOSAndroid
启用懒渲染。只有当用户滚动到可见区域时,才会渲染 items,从而减少初始加载时间和内存使用。
lazyOptionsiOSAndroid
启用懒渲染。只有当用户滚动到可见区域时,才会渲染 items,从而减少初始加载时间和内存使用。
main-thread:gestureiOSAndroid
如果想使用 gesture API,请传入该属性。
onUIAppeariOSAndroidHarmony
UI 的曝光事件。
onUIDisappeariOSAndroidHarmony
UI 的消失事件。
ref
sceneiOSAndroid
用于标记懒加载的曝光时机。请确保页面中唯一。
scrollMonitorTagiOSAndroidHarmony
滚动监控的标签。
scrollOrientationiOSAndroidHarmony
设置为 'vertical' 为垂直滚动,设置为 'horizontal' 为水平滚动。
scrollPropagationBehavioriOSAndroid
控制滚动事件是否向父级容器传递。'preventPropagate' 在 iOS 上暂时需与 temporaryBlockScrollClass 和 temporaryBlockScrollTag 配合使用。
Currently, this property has limitations because its full functionality depends on a higher native SDK version: on iOS,
propagate only works if both the parent and this component are set to propagate and useRefactorList={true} does not support 'propagate'. On Android, preventPropagate only functions when the parent is x-swiper or x-viewpager-ng.scrollviewIdiOSAndroid
滚动视图的id。
stickyiOSAndroid
粘性元素,设计用于
Tabs。styleiOSAndroid
Styles for
KeyboardAwareResponder
KeyboardAwareResponder 的样式temporaryBlockScrollClassiOS
当 scrollPropagationBehavior 设为 'preventPropagate' 时,被阻止滚动的容器的具体类名。'preventPropagate' 需与 temporaryBlockScrollClass 和 temporaryBlockScrollTag 配合使用。
This is a temporary props and will be deprecated on new Lynx SDK version.
temporaryBlockScrollTagiOS
用于指定当 scrollPropagationBehavior 设为 'preventPropagate' 时被阻止滚动的原生容器标签(对应 UIView 的 Tag 属性)。该值需由原生容器提供方指定,且 'preventPropagate' 必须与 temporaryBlockScrollClass 和 temporaryBlockScrollTag 配合使用。
This is a temporary props and will be deprecated on new Lynx SDK version.
temporaryNestedScrollAndroid
仅 Android 生效的临时开关,用于控制嵌套滚动冲突;映射到原生属性 'enable-nested-scroll'。Android上默认开启。
testingiOSAndroid
测试模式
catchLongPressiOSAndroidHarmony
与 onLongPress 相同,但会阻止事件冒泡。
catchTouchCanceliOSAndroidHarmony
与 onTouchCancel 相同,但会阻止事件冒泡。
catchTouchEndiOSAndroidHarmony
与 onTouchEnd 相同,但会阻止事件冒泡。
catchTouchMoveiOSAndroidHarmony
与 onTouchMove 相同,但会阻止事件冒泡。
catchTouchStartiOSAndroidHarmony
与 onTouchStart 相同,但会阻止事件冒泡。
onContentSizeChangeiOSAndroid
滚动内容变化时触发。
onLayoutChangeiOSAndroidHarmony
当 UI 视口大小改变时发送。
onLongPressiOSAndroidHarmony
当触摸点在 UI 上按住一段时间后发送。
onScrolliOSAndroid
滚动时触发。
onScrollEndiOSAndroid
滚动停止时触发。
onScrollToLoweriOSAndroid
滚动到底部时触发。
onScrollToUpperiOSAndroid
滚动到顶部时触发。
onTapiOSAndroidHarmony
当触摸点在 UI 上轻触时发送。
onTouchCanceliOSAndroidHarmony
当触摸事件在完成前被中断或取消时发送。
onTouchEndiOSAndroidHarmony
当触摸点从 UI 上移除时发送。
onTouchMoveiOSAndroidHarmony
当触摸点在 UI 上移动时发送。
onTouchStartiOSAndroidHarmony
当触摸点放置在 UI 上时发送。
InputProps
classNameiOSAndroidHarmony
类名
confirmTypeiOSAndroidHarmony
输入框确认按钮类型
defaultValueiOSAndroidHarmony
输入框默认值
idiOSAndroidHarmony
输入框 id
inputFilteriOSAndroidHarmony
输入框内容过滤正则表达式
maxLengthiOSAndroidHarmony
输入框最大长度
onBluriOSAndroidHarmony
输入框失焦事件
onConfirmiOSAndroidHarmony
输入框确认按钮点击事件
onFocusiOSAndroidHarmony
输入框聚焦事件
onInputiOSAndroidHarmony
输入框内容改变事件
onSelectionChangeiOSAndroidHarmony
输入框选择范围改变事件
placeholderiOSAndroidHarmony
输入框占位符
readonlyiOSAndroidHarmony
输入框是否可交互
ref
showSoftInputOnFocusiOSAndroidHarmony
输入框是否聚焦时显示软键盘
styleiOSAndroidHarmony
样式
typeiOSAndroidHarmony
输入框内容类型
valueiOSAndroidHarmony
输入框受控值
TextAreaRef
bluriOSAndroidHarmony
释放输入框焦点
focusiOSAndroidHarmony
聚焦输入框
getValueiOSAndroidHarmony
获取输入框内容
setSelectionRangeiOSAndroidHarmony
设置输入框选中范围
setValueiOSAndroidHarmony
设置输入框内容
KeyboardAwareResponderRef
as
InputRef
bluriOSAndroidHarmony
释放输入框焦点
focusiOSAndroidHarmony
聚焦输入框
getValueiOSAndroidHarmony
获取输入框内容
setSelectionRangeiOSAndroidHarmony
设置输入框选中范围
setValueiOSAndroidHarmony
设置输入框内容