更新记录

1.0.0(2025-02-18) 下载此版本

发布初版


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
app-vue × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

Input 输入框

组件名: xt-input

适配情况需自行尝试,开发时只测试了H5、APP、微信小程序

安装方式

本组件符合 easycom 规范,HBuilderX 3.1.0 起,只需将本组件导入项目,在页面 template 中即可直接使用,无需在页面中 import 和注册 components

基本用法

<template>
    <view class="xt">
        <view>
            <view>基本用法</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal"> </xt-input>
            </view>
        </view>
        <view>
            <view>禁用状态</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal" disabled> </xt-input>
            </view>
        </view>
        <view>
            <view>只读状态</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal" readonly> </xt-input>
            </view>
        </view>
        <view>
            <view>一键清空</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal" clearable> </xt-input>
            </view>
        </view>
        <view>
            <view>圆角输入框</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal" round> </xt-input>
            </view>
        </view>
        <view>
            <view>内容格式化</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal2" :formatter="onFormatter"> </xt-input>
            </view>
        </view>
        <view>
            <view>前后插槽</view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal">
                    <template #prepend>
                        <view>
                            <xt-icon></xt-icon>
                        </view>
                    </template>
                </xt-input>
            </view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal">
                    <template #append>
                        <view>
                            <xt-icon></xt-icon>
                        </view>
                    </template>
                </xt-input>
            </view>
            <view style="margin-top: 10rpx;">
                <xt-input v-model="inputVal">
                    <template #prepend>
                        <view>
                            <xt-icon></xt-icon>
                        </view>
                    </template>
                    <template #append>
                        <view>
                            <xt-icon></xt-icon>
                        </view>
                    </template>
                </xt-input>
            </view>
        </view>
    </view>
</template>
<script>
    export default {
        data() {
            return {
                inputVal: 'XT-INPUT',
                inputVal2: 'XT-INPUT',
            }
        },
        methods: {
            onFormatter() {
                return '格式化内容'
            }
        }
    }
</script>
<style lang="scss">
    .xt {
        padding: 0 20rpx;
        display: flex;
        flex-direction: column;
        gap: 15rpx;
    }
</style>

API

属性 类型 说明 默认值
value String | Number 输入框的值。
fontAlign String 输入框内容对齐方式。 left
fontSize String 输入框字体的大小。 32rpx
color String 输入框字体颜色。 #303133
customStyle Object 自定义样式。 -
type String 输入框的类型。 text
textContentType String 输入框的文本内容类型,仅在 App-nvue-IOS 中生效。 -
border String 输入框的边框样式。 surround
round Boolean 是否为圆角类型的输入框。 false
password Boolean 是否为密码类型的输入框。 false
placeholder String 输入框为空时的占位符文本。 -
placeholderStyle String | Object 占位符样式,可以是字符串或对象。
placeholderClass String 占位符样式类。 inputplaceholder
readonly Boolean 只读。 false
disabled Boolean 是否禁用输入框。 false
disabledColor String 禁用时输入框的背景颜色。 false
clearable Boolean 是否可清空。 false
maxlength Number 输入框的最大输入长度。 140
cursorSpacing Number 输入框与键盘之间的最小距离,单位为像素。 0
focus Boolean 是否获取焦点。 false
confirmType String 键盘右下角按钮的文字,仅在 type="text" 时生效。 done
confirmHold Boolean 点击键盘右下角按钮时是否保持键盘不收起。 false
cursor Number 指定焦点时光标的位置。 -
cursorColor String 设置光标的颜色。 -
selectionStart Number 设置自动聚焦时光标的起始位置。与 selectionEnd 配合使用。 -
selectionEnd Number 设置自动聚焦时光标的结束位置。与 selectionStart 配合使用。 -
adjustPosition Boolean 键盘弹起时是否自动上推页面。 true
autoBlur Boolean 键盘收起时是否自动失去焦点。 false
ignoreCompositionEvent Boolean 是否忽略文本合成系统事件。 true
alwaysEmbed Boolean 是否强制输入框保持在同一层级,仅在 iOS 下生效。 false
holdKeyboard Boolean 是否在 focus 时,点击页面时不收起键盘。 false
safePasswordCertPath String 安全键盘加密公钥的路径,只支持包内路径。 -
safePasswordLength Number 安全键盘的密码长度。 -
safePasswordTimeStamp Number 安全键盘的加密时间戳。 -
safePasswordNonce String 安全键盘的加密盐值。 -
safePasswordSalt String 安全键盘计算 hash 时使用的盐值。 -
safePasswordCustomHash String 安全键盘计算 hash 时的算法表达式。 -
randomNumber Boolean 是否在数字键盘(numberdigitidcard 类型)上随机排列数字。 false
controlled Boolean 是否为受控组件。为 true 时,value 内容会完全由 setData 控制。 false
alwaysSystem Boolean 是否强制使用系统键盘和 Webview 创建的输入元素。 false
inputmode String 输入框的输入模式。可以是 textnumeric 等。 text
formatter Function 内容式化函数。 -

各参数具体可选值,请查询uniapp官网

uniapp官网-input

格式化函数

onFormatter(e) {
  // 格式化逻辑
  e = '格式化内容'
  /****/
  // 最后返回即可
                return e
        }

Events

事件 类型 说明
click Function 输入框点击事件。
input Function 输入框输入事件。
focus Function 输入框聚焦事件。
blur Function 输入框失去焦点事件。
confirm Function 点击完成按钮时触发。
keyboardheightchange Function 键盘高度发生变化的事件。
clear Function 输入框清空时触发。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问