Input输入框

... 2021-8-5 About 2 min

# Input输入框

# 基础用法

typeinput时可以不写,默认为input

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            type:'input'
         },
         {
            label:'输入框',
            prop:'input1'
         }
        ]
      }
    }
  }
}
</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
Expand Copy

# 默认值

value属性可以提供一个初始化的默认值

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            value:'默认值'
         }
        ]
      }
    }
  }
}
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Expand Copy

# 禁用状态

通过disabled属性指定是否禁用

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            disabled:true
         }
        ]
      }
    }
  }
}
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Expand Copy

# 可清空

使用clearable属性即可得到一个可清空的输入框,默认为true

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            clearable:false
         }
        ]
      }
    }
  }
}
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Expand Copy

# 密码框

用于密码,通过将 type 属性的值指定为 password

使用showPassword属性即可得到一个可切换显示隐藏的密码框

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'密码框',
            prop:'input',
            type:'password',
            showPassword:true
         }
        ]
      }
    }
  }
}
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Expand Copy

# 文本域

用于文本域,通过将 type 属性的值指定为 textarea,文本域高度可通过 rows 属性控制

通过设置maxRowsminRows,指定最小行数和最大行数,使得文本域的高度能够根据文本内容自动进行调整

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'文本域',
            prop:'input',
            type:'textarea',
            minRows:3,
            maxRows:5
         },
         {
            label:'文本域',
            prop:'input1',
            type:'textarea',
            rows:5
         }
        ]
      }
    }
  }
}
</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
Expand Copy

# 尺寸

可通过size属性指定输入框的尺寸,默认为small,还提供了large,smallmini三种尺寸。

<avue-form :option="option"></avue-form>

<script>
export default{
  data() {
    return {
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            size:'large',
         },
         {
            label:'输入框',
            prop:'input1'
         },
         {
            label:'输入框',
            prop:'input2',
            size:'mini'
         }
        ]
      }
    }
  }
}
</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
29
Expand Copy

# 复合型输入框

带有图标标记输入类型

可以通过 prefixIconsuffixIcon以及prependappend属性在 input 组件首部和尾部增加显示图标

<avue-form :option="option" v-model="form"></avue-form>

<script>
export default{
  data() {
    return {
      form: {},
      option: {
        column: [
         {
            label:'输入框',
            prop:'input',
            appendClick: () => {
              ElMessage.success('appendClick')
            },
            prependClick: () => {
              ElMessage.success('prependClick')
            },
            prepend:'HTTP',
            append:'COM'
         },
         {
            label:'输入框',
            prop:'input1',
            suffixIcon:"el-icon-date",
            prefixIcon:"el-icon-search"
         }
        ]
      }
    }
  }
}
</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
29
30
31
32
33
34
Expand Copy

# 输入长度限制

maxlengthminlength 是原生属性,用来限制输入框的字符长度,其中字符长度是用 Javascript 的字符串长度统计的。在使用 maxlength 属性限制最大输入长度的同时,可通过设置 showWordLimit 属性来展示字数统计。

<avue-form :option="option" v-model="form"></avue-form>

<script>
export default{
  data() {
    return {
      form: {},
      option: {
        column: [
         {
            label:'单文本框',
            prop:'input',
            maxlength:10,
            showWordLimit:true
         }, {
            label:'多文本框',
            prop:'textarea',
            type:'textarea',
            maxlength:20,
            minRows:3,
            maxRows:5,
            span:24,
            showWordLimit: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
29
30
31
Expand Copy
Last update: November 14, 2024 11:41
Contributors: smallwei
您正在浏览基于 Vue 2.x 的 Avue 文档; 点击这里 查看 Vue 3.x 的升级版本