# Cube-Input
# 介绍
输入框组件,支持使用wx:model对数据双向绑定,支持一键清空内容。
# 示例
# 基础用法
通过wx:model属性对于输入内容进行双向绑定。
<template>
<cube-input wx:model="{{ inputValue }}" wx:model-prop="value"/>
{{ inputValue }}
</template>
<script>
import { createPage } from '@mpxjs/core'
createPage({
data: {
inputValue: 'mpx-cube-ui'
}
})
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 控制最大长度
通过maxlength配置最大长度等。
<template>
<cube-input wx:model="{{ inputValue }}" wx:model-prop="value" maxlength="{{ maxlength }}"/>
{{ textareaValue }}
</template>
<script>
import { createPage } from '@mpxjs/core'
createPage({
data: {
inputValue: 'mpx-cube-ui',
maxlength: 10
}
})
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 清空按钮
通过clearable配置清空按钮。
clearable可以为布尔类型,还可以配置为对象
<template>
<cube-input
wx:model="{{ value }}"
placeholder="{{ placeholder }}"
type="{{ type }}"
maxlength="{{ maxlength }}"
disabled="{{ disabled }}"
clearable="{{ clearable }}"
/>
</template>
<script>
import { createPage } from '@mpxjs/core'
createPage({
data: {
value: '',
placeholder: '请输入内容',
type: 'text',
maxlength: 100,
disabled: true,
clearable: {
visible: true,
blurHidden: true
}
}
})
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
clearable配置的对象包含两个值:visivle和blurHidden分别代表当前是否展示以及当前Input元素离焦的时候是否隐藏。
# 密码配置
通过eye配置密码眼睛。
eye配置为对象
<template>
<cube-input
wx:model="{{ value }}"
placeholder="{{ placeholder }}"
type="{{ type }}"
maxlength="{{ maxlength }}"
disabled="{{ disabled }}"
eye="{{ eye }}"
/>
</template>
<script>
import { createPage } from '@mpxjs/core'
createPage({
data: {
value: '',
placeholder: '请输入内容',
type: 'password',
maxlength: 100,
disabled: true,
eye: {
open: true,
reverse: false
}
}
})
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
eye配置的对象包含两个值:open和reverse分别代表当前是否展示以及当前眼睛展示是否反转。
# Props
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| themeType | 用于生成最外层类名 如原类名为 cube-component,添加 themeType = demo 后,类名变为 cube-component cube-component-demo | String | - | - |
| value | 输入框的内容 | String | - | - |
| type | 输入框的类型 | String | - | text |
| placeholder | 占位文本 | String | - | 请输入... |
| placeholderStyle | 指定 placeholder 的样式 | String | - | color: #969699 |
| disabled | 是否禁用 | Boolean | - | false |
| focus | 获取焦点 | Boolean | - | false |
| autoFocus | 自动聚焦 | Boolean | - | false |
| autocomplete | 是否自动填充 | Boolean | - | false |
| maxlength | 最大输入长度 | Number | - | -1 |
| clearable | 清除按键是否可见和清除按键离焦是否可见 | Object | - | {} |
| eye | 密码眼睛是否可见和展示样式 | Object | - | {} |
| cursorSpacing | 指定光标与键盘的距离(web暂不支持) | Number | - | 0 |
| cursor | 指定focus时的光标位置(web暂不支持) | Number | - | -1 |
| selectionStart | 光标起始位置(web暂不支持) | Number | - | -1 |
| selectionEnd | 光标结束位置(web暂不支持) | Number | - | -1 |
| adjustPosition | 键盘弹起时,是否自动上推页面(web暂不支持) | Boolean | - | true |
| holdKeyboard | focus时,点击页面的时候不收起键盘(web暂不支持) | Boolean | - | false |
# Events
| 事件名 | 说明 | 参数 |
|---|---|---|
| input | - | - |
| confirm | 点击完成时, 触发 confirm 事件 | 事件对象 e = {value: value} |
| focus | 输入框聚焦时触发 | 事件对象 @arg 事件对象 e = {value} |
| blur | 输入框失去焦点时触发 | 事件对象 @arg 事件对象 e = {value, cursor} |
# Slots
| 插槽名 | 说明 |
|---|---|
| prepend | 前缀插槽 |
| append | 后缀插槽 |
# CSS Variable
| 变量名 | 默认值 | 含义 |
|---|---|---|
| $input-color | #4B4B4D | 文本颜色 |
| $input-bgc | #FFFFFF | 背景颜色 |
| $input-padding | 10px 10px 10px 10px | 内边距 |
| $input-disable-bgc | #eee | 禁用颜色 |
| $input-border-color | #E8E9EB | 边框颜色 |
| $input-border-radius | 7px | 边框圆角 |
| $input-focus-border-color | 边框颜色 | |
| $input-indicator-color | #969699 | 指示器颜色 |
| $input-indicator-waring-color | #C73122 | 指示器警告颜色 |
| $input-indicator-bottom | 5px | 指示器下边距 |
| $input-indicator-right | 10px | 指示器右边距 |
| $input-font-size | 文本字号 | |
| $input-indicator-font-size | 指示器文本字号 | |
| $input-indicator-line-height | 14px | 指示器行高 |
| $input-clear-icon-color | #999 | - |