# Textarea 多行输入框

概述

Textarea 多行输入框,该组件是对原生textarea组件的增强,内置了常用布局样式,同时包含 textarea 所有功能。

# 引入

以下介绍两种常用的引入方式。
第一种:在页面json文件中引入
{
  "navigationBarTitleText": "多行输入框",
  "usingComponents": {
    "fui-textarea":"/components/firstui/fui-textarea/fui-textarea"
  }
}
1
2
3
4
5
6
第二种:在根目录app.json文件中全局引入
"usingComponents": {
     "fui-textarea":"components/firstui/fui-textarea/fui-textarea"
}
1
2
3

# 代码演示

部分示例演示,完整使用请参考示例程序以及文档API。
基础使用

通过 placeholder 属性设置提示信息。

<fui-textarea placeholder="请输入内容"></fui-textarea>
1
带标题

通过 label 属性设置标题,flexStart 属性设置标题与输入框是否顶端对齐。

<fui-textarea flexStart label="标题" placeholder="请输入内容"></fui-textarea>
1
调整高度、必填项

通过 required 属性设置是否显示必填图标,heightmin-height 属性调整输入框高度。

<fui-textarea required height="40rpx" min-height="40rpx" label="标题" placeholder="请输入内容"></fui-textarea>
1
使用model:value

双向绑定。

<fui-textarea isCounter placeholder="请输入内容" model:value="{{text}}"></fui-textarea>
1

# Slots

插槽名称 说明
default 多行输入框右侧定义显示内容
left 多行输入框左侧自定义显示内容

# Props

属性名 类型 说明 默认值 其他说明
required Boolean 是否显示必填图标 false -
requiredColor String 必填图标颜色 #FF2B2B -
requiredTop String 必填图标top值,flexStart为true时生效 34rpx -
label String 左侧标题 - -
labelSize Number,String 标题字体大小 32 -
labelColor String 标题字体颜色 #333 -
labelWidth Number, String 标题最小宽度,单位rpx 140 -
focus Boolean 获取焦点 false -
autoHeight Boolean 是否自动增高,设置auto-height时,style.height不生效 false -
fixed Boolean 如果 textarea 是在一个 position:fixed 的区域,需要显示指定属性 fixed 为 true false -
placeholder String 输入框为空时占位符 - -
placeholderStyle String 指定 placeholder 的样式 - -
name String 输入框名称 - -
value Number,String 输入框值 - -
disabled Boolean 是否禁用 false -
disabledStyle V2.1.0+ Boolean 是否启用禁用状态下的样式,与正常输入框样式略有区别,仅disabled为true时有效 false -
maxlength Number, String 最大输入长度,设置为 -1 的时候不限制最大长度 140 -
cursorSpacing Number 指定光标与键盘的距离,单位 px 0 -
showConfirmBar Boolean 是否显示键盘上方带有”完成“按钮那一栏。 true -
cursor Number 指定focus时的光标位置 -1 -
selectionStart Number 光标起始位置,自动聚集时有效,需与selection-end搭配使用 -1 -
selectionEnd Number 光标结束位置,自动聚集时有效,需与selection-start搭配使用 -1 -
adjustPosition Boolean 键盘弹起时,是否自动上推页面 true -
disableDefaultPadding Boolean 是否去掉 iOS 下的默认内边距 true 微信小程序2.10.0+
holdKeyboard Boolean focus时,点击页面的时候不收起键盘 false 微信小程序2.8.2+
height String 输入框高度 200rpx -
minHeight String 输入框最小高度 200rpx -
flexStart Boolean 标题与输入框是否顶端对齐 false -
size Number,String 输入框字体大小,单位 rpx 32 -
color String 输入框字体颜色 #333 -
textareaBorder Boolean 是否显示textarea边框,为true则borderTop,borderBottom失效 false -
borderTop Boolean 是否显示上边框 true -
topLeft Number, String 上边框left值,单位rpx 0 -
topRight Number, String 上边框right值,单位rpx 0 -
borderBottom Boolean 是否显示下边框 true -
bottomLeft Number, String 下边框left值,单位rpx 32 -
bottomRight Number, String 下边框right值,单位rpx 0 -
borderColor String 边框颜色 #EEEEEE 默认可通过css变量(--fui-color-border)修改颜色
radius V1.9.0+ Number, String 圆角值,单位rpx,设置圆角则所有边框失效 0 -
trim Boolean 是否自动去除两端的空格 true -
textRight Boolean 输入框内容是否右对齐显示 false -
padding String 输入框padding值 28rpx 32rpx -
backgroundColor String 输入框背景颜色 #FFFFFF -
marginTop Number,String 输入框margin-top值,单位rpx 0 -
isCounter Boolean 是否显示底部输入长度计数 false -
counterColor String 计数文本颜色 #B2B2B2 -
counterSize Number,String 计数文本字体大小,单位rpx 28 -

# Events

事件名 说明 回调参数
bind:input 当键盘输入时,触发input事件 event.detail=value
bind:focus 输入框聚焦时触发 event.detail = { value, height },height 为键盘高度
bind:blur 输入框失去焦点时触发 event.detail = {value, cursor}
bind:confirm 点击完成按钮时触发 event.detail = {value}
bind:click 点击输入框时触发 event.detail = {name}
bind:linechange 输入框行数变化时调用 event.detail = {height: 0, heightRpx: 0, lineCount: 0}
bind:keyboardheightchange 键盘高度发生变化的时候触发此事件(微信小程序基础库2.7.0+) event.detail = {height: height, duration: duration}

示例预览

Last Updated: 10/7/2023, 12:14:41 PM