doc.md 2.6 KB
Newer Older
D
Drjingfubo 已提交
1 2 3 4
# ShortPassword 短密码组件

### 介绍

S
suzigang 已提交
5
短密码输入框,可用于输入密码、短信验证码等
D
Drjingfubo 已提交
6 7 8 9 10 11 12 13 14 15 16 17 18
### 安装

``` javascript
import { createApp } from 'vue';
import { ShortPassword } from '@nutui/nutui';

const app = createApp();
app.use(ShortPassword);

```

## 代码示例

richard_1015's avatar
richard_1015 已提交
19
### 公用片段
D
Drjingfubo 已提交
20 21

``` html
richard_1015's avatar
richard_1015 已提交
22 23 24 25 26 27
<nut-shortpassword
  v-model:value="state.value"
  v-model:visible="state.visible"
  :no-button="state.noButton"
  :length="state.length"
  :error-msg="state.errorMsg"
richard_1015's avatar
richard_1015 已提交
28 29 30 31
  @change="methods.onChange"
  @complete="methods.onComplete"
  @ok="methods.onOk"
  @tips="methods.onTips">
D
Drjingfubo 已提交
32 33 34 35
</nut-shortpassword>
```

``` javascript
richard_1015's avatar
richard_1015 已提交
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
import { reactive, getCurrentInstance } from 'vue';
setup() {
  let { ctx } = getCurrentInstance();
  const state = reactive({
    visible: false,
    noButton: true,
    value: '',
    errorMsg: '',
    length: 6
  });
  const methods = {
    onChange(val: string) {
      val && ctx.$toast.text(val);
    },
    onOk(val: string) {
      val && ctx.$toast.text(val);
      state.visible = false;
    },
    onComplete() {
      
    },
    onTips() {
      ctx.$toast.text('执行忘记密码逻辑');
    }
  };
  return {
    state,
    methods
  };
}
D
Drjingfubo 已提交
66 67

```
richard_1015's avatar
richard_1015 已提交
68
### 基础用法
D
Drjingfubo 已提交
69

richard_1015's avatar
richard_1015 已提交
70 71
``` html
<nut-cell title="基础用法" is-link @click="state.visible = true;"></nut-cell>
D
Drjingfubo 已提交
72 73
```

richard_1015's avatar
richard_1015 已提交
74
### 显示按钮组
D
Drjingfubo 已提交
75 76

``` html
richard_1015's avatar
richard_1015 已提交
77
<nut-cell title="显示按钮组" is-link @click="state.visible = true;state.noButton = false;"></nut-cell>
D
Drjingfubo 已提交
78 79
```

richard_1015's avatar
richard_1015 已提交
80
### 自定义密码长度4
D
Drjingfubo 已提交
81

richard_1015's avatar
richard_1015 已提交
82 83 84 85
``` html
<nut-cell title="自定义密码长度4" is-link @click="state.visible = true;state.length = 4;"></nut-cell>
```
### 忘记密码提示语事件回调
D
Drjingfubo 已提交
86 87

``` html
richard_1015's avatar
richard_1015 已提交
88
<nut-cell title="忘记密码提示语事件回调" is-link @click="state.visible = true;"></nut-cell>
D
Drjingfubo 已提交
89 90
```

richard_1015's avatar
richard_1015 已提交
91 92 93
### 错误提示语
``` html
<nut-cell title="错误提示语" is-link @click="state.visible = true;state.errorMsg = '请输入正确密码';"></nut-cell>
D
Drjingfubo 已提交
94 95 96 97 98 99
```

### Prop


| 字段 | 说明 | 类型 | 默认值
richard_1015's avatar
richard_1015 已提交
100 101 102 103 104 105
|----- | ----- | ----- | ----- |
| title | 标题| String | 请输入密码|
| desc | 密码框描述| String | 您使用了虚拟资产,请进行验证|
| tips | 提示语| String | 忘记密码|
| visible | 是否展示短密码框| Boolean | false|
| value | 密码初始值 | String | ''|
S
suzigang 已提交
106
| no-button | 是否隐藏底部按钮 |Boolean|true|
richard_1015's avatar
richard_1015 已提交
107 108
| length | 密码长度,取值为4~6 |String||Number|6|
| error-msg | 错误信息提示 |String|''|
D
Drjingfubo 已提交
109 110 111 112


### Event

S
suzigang 已提交
113
| 事件名称 | 说明 | 回调参数
D
Drjingfubo 已提交
114
|----- | ----- | ----- 
richard_1015's avatar
richard_1015 已提交
115
| change | 输入密码时触发事件 | --
richard_1015's avatar
richard_1015 已提交
116
| ok | 点击确实时触发事件 | value
S
suzigang 已提交
117
| complete | 输入完成的回调 | value