当前位置: 首页 > wzjs >正文

公司网站建设费入哪个科目更改域名代理商对网站有影响吗

公司网站建设费入哪个科目,更改域名代理商对网站有影响吗,wordpress 菜单高亮,南京公司建设网站UniApp 实现的数字键盘与密码输入框组件 前言 在移动应用中,数字键盘与密码输入框广泛应用于支付、登录、验证等场景。一个体验良好的数字键盘和密码输入框组件,不仅能提升安全性,还能增强用户的输入体验。随着鸿蒙(HarmonyOS&a…

UniApp 实现的数字键盘与密码输入框组件

前言

在移动应用中,数字键盘与密码输入框广泛应用于支付、登录、验证等场景。一个体验良好的数字键盘和密码输入框组件,不仅能提升安全性,还能增强用户的输入体验。随着鸿蒙(HarmonyOS)生态的壮大,开发者对多端适配和高性能交互提出了更高要求。本文将以 UniApp 为例,详细讲解如何开发一个美观、实用、适配鸿蒙的数字键盘与密码输入框组件。

一、需求与设计思路

1. 需求分析

  • 支持自定义密码长度(如6位、4位)
  • 密码输入框支持明文/密文切换
  • 数字键盘支持0-9、删除、完成等按键
  • 输入完成自动回调,支持清空
  • 兼容鸿蒙平台,适配不同分辨率
  • 组件化设计,便于复用和扩展

2. 设计思路

  • 密码输入框采用分格显示,支持密文圆点或明文
  • 数字键盘采用自定义布局,按键响应灵敏
  • 通过 props 传递长度、密文、回调等参数
  • 组件间通过事件通信,提升解耦性
  • 适配鸿蒙平台的安全键盘和交互动画

二、核心代码实现

1. 密码输入框组件

<template><view class="pwd-box" @click="$emit('focus')"><viewv-for="(v, i) in length":key="i"class="pwd-cell":class="{ active: i === value.length }"><text v-if="value[i] && !plain">●</text><text v-else>{{ value[i] || '' }}</text></view></view>
</template>
<script>
export default {name: 'PwdInput',props: {value: { type: String, default: '' },length: { type: Number, default: 6 },plain: { type: Boolean, default: false },},
};
</script>
<style scoped>
.pwd-box {display: flex;justify-content: space-between;align-items: center;background: #fff;border-radius: 12rpx;box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.04);padding: 0 12rpx;height: 88rpx;margin-bottom: 32rpx;cursor: pointer;
}
.pwd-cell {width: 56rpx;height: 56rpx;border-bottom: 3rpx solid #eee;text-align: center;font-size: 36rpx;color: #222;line-height: 56rpx;margin: 0 8rpx;transition: border-color 0.2s;
}
.pwd-cell.active {border-color: #007aff;
}
</style>

2. 数字键盘组件

<template><view class="num-keyboard"><view class="key-row" v-for="row in keys" :key="row.join('')"><viewv-for="key in row":key="key"class="key":class="{ del: key === 'del', ok: key === 'ok' }"@click="onKey(key)"><text v-if="key === 'del'">⌫</text><text v-else-if="key === 'ok'">完成</text><text v-else>{{ key }}</text></view></view></view>
</template>
<script>
export default {name: 'NumKeyboard',props: {disabled: { type: Boolean, default: false },},data() {return {keys: [['1', '2', '3'],['4', '5', '6'],['7', '8', '9'],['del', '0', 'ok'],],};},methods: {onKey(key) {if (this.disabled) return;this.$emit('press', key);},},
};
</script>
<style scoped>
.num-keyboard {background: #fff;border-radius: 18rpx;box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.04);padding: 24rpx 0 12rpx 0;user-select: none;
}
.key-row {display: flex;justify-content: space-around;margin-bottom: 18rpx;
}
.key {width: 96rpx;height: 64rpx;background: #f7f7fa;border-radius: 12rpx;text-align: center;line-height: 64rpx;font-size: 32rpx;color: #222;margin: 0 8rpx;transition: background 0.2s;cursor: pointer;
}
.key:active {background: #e6f7ff;color: #007aff;
}
.key.del {color: #ff4d4f;
}
.key.ok {background: #007aff;color: #fff;
}
</style>

3. 父页面集成与使用示例

<template><view><pwd-input :value="pwd" :length="6" :plain="plain" @focus="showKeyboard = true" /><view class="toggle-plain" @click="plain = !plain"><text>{{ plain ? '显示密文' : '显示明文' }}</text></view><num-keyboard v-if="showKeyboard" @press="onKeyPress" /></view>
</template><script>
import PwdInput from '@/components/PwdInput.vue';
import NumKeyboard from '@/components/NumKeyboard.vue';
export default {components: { PwdInput, NumKeyboard },data() {return {pwd: '',plain: false,showKeyboard: false,};},methods: {onKeyPress(key) {if (key === 'del') {this.pwd = this.pwd.slice(0, -1);} else if (key === 'ok') {this.showKeyboard = false;uni.showToast({ title: `输入完成:${this.pwd}`, icon: 'none' });} else if (this.pwd.length < 6) {this.pwd += key;if (this.pwd.length === 6) {this.showKeyboard = false;uni.showToast({ title: `输入完成:${this.pwd}`, icon: 'none' });}}},},
};
</script><style scoped>
.toggle-plain {text-align: right;color: #007aff;font-size: 26rpx;margin-bottom: 24rpx;cursor: pointer;
}
</style>

三、鸿蒙平台适配与优化建议

  1. 分辨率适配:全程使用 rpx 单位,保证鸿蒙不同设备下的显示一致。
  2. 安全键盘支持:鸿蒙平台对安全输入有更高要求,建议关键场景优先调用原生安全键盘。
  3. 性能优化:组件渲染建议避免频繁重绘,提升鸿蒙设备流畅度。
  4. 交互动画:鸿蒙设备对交互反馈要求高,建议按键、输入框点击增加动效。
  5. 无障碍适配:为输入框、按键等添加 aria-label,提升鸿蒙无障碍体验。

四、实际应用案例

  • 支付App:支付密码输入,支持密文显示与安全键盘。
  • 登录/注册App:短信验证码输入,数字键盘提升输入效率。
  • 工具类App:自定义数字输入场景,如房间号、设备码等。

五、总结与展望

数字键盘与密码输入框组件是移动端安全输入的基础能力。通过 UniApp 的组件化和跨平台特性,我们可以高效实现兼容鸿蒙的高性能输入体验。未来还可结合生物识别、动态密码等进一步提升安全性和便捷性。希望本文的讲解和代码示例能为你的项目带来启发,欢迎留言交流更多鸿蒙适配经验!


文章转载自:

http://IGBme0uC.wjqyt.cn
http://29rB8W9h.wjqyt.cn
http://IRsI2kZf.wjqyt.cn
http://aIdZ2sYw.wjqyt.cn
http://M9xFYvcR.wjqyt.cn
http://h0XrvDdZ.wjqyt.cn
http://TeeRH8No.wjqyt.cn
http://M2VgifCI.wjqyt.cn
http://CwIkx8Ri.wjqyt.cn
http://POMZLmlx.wjqyt.cn
http://Mxo9wG9N.wjqyt.cn
http://uPMe1j1Z.wjqyt.cn
http://xYWaInKI.wjqyt.cn
http://aD8hiavn.wjqyt.cn
http://BABGGfjH.wjqyt.cn
http://BLBJkOTW.wjqyt.cn
http://7wVtuM15.wjqyt.cn
http://iZZvf1bw.wjqyt.cn
http://2j58I6oz.wjqyt.cn
http://1CVZSZLG.wjqyt.cn
http://hFll74Tm.wjqyt.cn
http://dtf8T3Dd.wjqyt.cn
http://L2MqOjw7.wjqyt.cn
http://iMm976eo.wjqyt.cn
http://dlNTfTm3.wjqyt.cn
http://48Aq6H2P.wjqyt.cn
http://9bOWhlIP.wjqyt.cn
http://mlOStCPW.wjqyt.cn
http://2OkyGJES.wjqyt.cn
http://J7dvZXQ6.wjqyt.cn
http://www.dtcms.com/wzjs/655339.html

相关文章:

  • 网站还在建设就已经可以访问了_影响后期百度个人网站建设安全
  • 阿里云域名空间网站建设吉化北建公司官网
  • 百度站长平台投诉网站营销型网站开发流程
  • 在线教学视频网站建设seo深圳培训班
  • 个人网站能备案吗wordpress菜单导航插件
  • 网站结构与导航设计成都铁路局贵阳建设指挥部网站
  • 怎么建网站教程视频做网站是互联网开发吗
  • 量力商务大厦网站建设没有备案的网站能否帮网上支付
  • 别人做的网站不能用用源码做自己的网站
  • 企业建设网站宜春建设局网站
  • 佛山牛豹云网站开发2345网址大全导航下载
  • 视频模板网站推荐做彩页素材的网站
  • 用h5开发的网站模板下载M97 网站建设网络公司整站源码
  • 太湖县城乡建设局网站低成本创业项目
  • 手机英语学习网站触屏版手机wap用户登陆注册网站模板115网页游戏源码交易平台
  • 建设网站 xp外贸商城网站模板
  • 网站会员系统功能如何创建个人网站免费
  • 官网的网站建设桐庐建设局网站
  • 南昌网站推广¥做下拉去118cr网站系统建设的主要意义
  • 怎么在网站首页做飘窗中企动力总部在哪里
  • 网站ui设计报价单家装公司名称取名参考
  • 百度做营销网站多少钱网站建设要什么
  • 网站注册域名响应式网站几个断点
  • 山西制作网站公司排名做网站平台成本
  • 零食网站制作的建设大纲自己在线制作logo免费版
  • 公司logo设计在线制作大城网站优化
  • wordpress仿站服务学python学费大概多少
  • 南宁大型网站开发千锋教育地址
  • 世界著名产品设计作品深圳做网站乐云seo598
  • seo网站建设时文章频率企业建站公司怎么创业