Skip to content

Input 输入框

MoInput 用于文本输入、多行文本和标签输入。普通文本使用 v-model,标签输入同时使用 v-modelv-model:tagsv-model 保存当前正在输入的文本,v-model:tags 保存已生成的标签数组。

基础用法

Light

当前值:Mojo UI

Dark

当前值:Mojo UI

vue
<script setup lang="ts">
import { ref } from "vue";

const name = ref("");
</script>

<template>
  <MoInput v-model="name" placeholder="请输入名称" clearable />
</template>

尺寸

Light
Dark
vue
<MoInput size="small" placeholder="Small" />
<MoInput placeholder="Default" />
<MoInput size="large" placeholder="Large" />

前缀与后缀

Light
Dark
vue
<MoInput v-model="keyword" placeholder="搜索">
  <template #prefix>⌕</template>
  <template #suffix>⌘K</template>
</MoInput>

Textarea 与字数统计

Light
31 / 120
Dark
31 / 120
vue
<MoInput
  v-model="intro"
  type="textarea"
  :rows="4"
  :maxlength="120"
  show-word-limit
  resize="vertical"
  placeholder="请输入说明"
/>

禁用与只读

Light
Dark
vue
<MoInput disabled model-value="禁用状态" />
<MoInput v-model="value" readonly />

标签输入

输入文字后按 Enter 生成标签。默认不允许重复标签;需要允许重复时传 allow-duplicate-tags

Light
VueVitePress

标签:Vue、VitePress

Dark
VueVitePress

标签:Vue、VitePress

vue
<script setup lang="ts">
import { ref } from "vue";

const keyword = ref("");
const tags = ref(["Vue"]);
</script>

<template>
  <MoInput
    v-model="keyword"
    v-model:tags="tags"
    taggable
    placeholder="输入后按 Enter"
  />
</template>

事件

Light

等待输入

Dark

等待输入

vue
<MoInput
  v-model="value"
  clearable
  @input="handleInput"
  @change="handleChange"
  @clear="handleClear"
/>

API

属性说明类型默认值
v-model输入值string | number""
v-model:tags标签列表,开启 taggable 时使用string[][]
type输入类型text | textareatext
size尺寸small | default | largedefault
theme主题light | darklight
placeholder占位文本string-
maxlength最大长度number | string-
showWordLimit是否显示字数统计,需要同时设置 maxlengthbooleanfalse
rows文本域行数number | string3
disabled是否禁用booleanfalse
readonly是否只读booleanfalse
clearable是否显示清空按钮,仅普通文本输入有效booleanfalse
taggable是否启用标签输入,仅 type="text" 有效booleanfalse
allowDuplicateTags是否允许重复标签booleanfalse
resize文本域缩放方式none | both | horizontal | verticalvertical

Events

事件说明参数
input输入时触发value: string
change原生 change 事件触发时触发value: string
clear点击清空按钮时触发-
tagAdd标签输入按 Enter 成功新增标签时触发value: string
tagRemove点击标签关闭按钮时触发value: string, index: number

Slots

插槽说明
prefix前缀内容,普通输入和标签输入可用
suffix后缀内容,普通输入和标签输入可用