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

HarmonyOS 开发基础(五)对用户名做点啥

一、实现用户名检验

条件渲染 、生命周期
1.规定用户名长度
2.限定使用的数字及字母(涉及正则表达)

// 导出方式直接从文件夹
import MyInput from "../common/commons/myInput"
@Entry
@Component
/*
组件可以基于struct实现,组件不能有继承关系,struct可以比class更加快速的创建和销毁。*/
struct Index {// 此处可以不赋值// 赋值的目的方便preview的时候检查@State username :string = "1652e1"@State password :string = "456451"private username_reg = /^[A-Za-z0-9]{5,8}$/;onPageShow(){let test_res = this.username_reg.test(this.username)console.info(test_res)}build() {Flex({direction:FlexDirection.Column,justifyContent:FlexAlign.Center,alignItems:ItemAlign.Center}){Text("登录").fontSize(40).fontWeight(700)// 用户名要求//1、用户名至少五位//2、正则匹配// if (this.username.length<5){//   Text("用户名至少五位")//     .fontSize(13)//     .fontWeight(700)//     .fontColor("#ff0000")//     .width("80%")// }// 用生命周期改进if (!this.username_reg.test(this.username)){Text("用户名必须5-8位,英文字母和数字组合").fontSize(13).fontWeight(700).fontColor("#ff0000").width("80%")}// 组件封装,完成父组件向子组件传参MyInput({placeHolder:"请输入用户名",inputValue:$username})/*placeHolder:"请输入用户名" 实现父组件向子组件传递 :请输入用户名inputValue:$username   子组件把监听得到的数据传到父组件下列代码再使用传回来的数据Text(this.username).fontSize(30).fontWeight(700).width("80%")该处未对数据进行校验,只是简单展示*/MyInput({placeHolder:"请输密码   ",inputValue:$password})Button("进入app")}.width("100%").height("100%").border({width:15,color:"#000"})}
}

二、模拟真机演示

1.演示中当输入用户名不符合要求是有提示
2.输入符合要求是提示的红色字体消失
在这里插入图片描述

相关文章:

HarmonyOS 开发基础(五)对用户名做点啥

一、实现用户名检验 条件渲染 、生命周期 1.规定用户名长度 2.限定使用的数字及字母&#xff08;涉及正则表达&#xff09; // 导出方式直接从文件夹 import MyInput from "../common/commons/myInput" Entry Component /* 组件可以基于struct实现&#xff0c;组件…...

【前端】搭建Vue3框架

目录 一、搭建准备二、node.js安装1、下载并安装2、配置默认安装目录和缓存日志目录①、创建默认安装目录和缓存日志目录&#xff08;我的node.js目录在D盘&#xff0c;所以直接在node.js文件夹下创建&#xff09;②、执行命令&#xff0c;配置默认安装目录和缓存日志目录到刚才…...

Opencv-C++笔记 (15) : 像素重映射 与 图像扭曲

文章目录 一、重映射简介二、图像扭曲 一、重映射简介 重映射&#xff0c;就是把一幅图像中某位置的像素放置到另一图像指定位置的过程。即&#xff1a; 在重映射过程中&#xff0c;图像的大小也可以同时发生改变。此时像素与像素之间的关系就不是一一对应关系&#xff0c;因…...

【Java】UWB高精度工业人员安全定位系统源码

基于VueSpring boot前后端分离架构开发的一套UWB技术高精度定位系统源码。 UWB高精度人员定位系统提供实时定位、电子围栏、轨迹回放等基础功能以及各种拓展功能,用户可根据实际需要任意选择搭配拓展功能。该系统简易部署&#xff0c;方便使用&#xff0c;实时响应。UWB高精度定…...

文本NLP噪音预处理(加拼写检查)

最近总结修改了下预处理方法&#xff0c;记录下 首先download需要的依赖 pip install pyenchantpip install nltk pyenchant 是用来检测拼写正确的&#xff0c;如果你的文本里面可能包含非正确拼写的单词&#xff0c;那就忽略它&#xff0c;nltk用来做分词的。 python -m nlt…...

[Docker实现测试部署CI/CD----自由风格的CI操作[最终架构](5)]

目录 11、自由风格的CI操作&#xff08;最终&#xff09;Jenkins容器化实现方案修改 docker.sock 权限修改 Jenkins 启动命令后重启 Jenkins构建镜像推送到Harbor修改 daemon.json 文件Jenkins 删除构建后操作Jenkins 添加 shell 命令重新构建 Jenkins通知目标服务器拉取镜像目…...

纯JS+Vue实现一个仪表盘

在使用canvas的时候发现数值变化&#xff0c;每次都要重新渲染&#xff0c;值都从0开始&#xff0c;这和我的需求冲突。 1. 先绘制基本的圆环背景&#xff0c;利用border-color和border-radius将正方形变成基本的圆环。 <div class"circle"><div class&qu…...

标定(内参、外参)

在计算机视觉中&#xff0c;特别是在相机标定和立体视觉领域&#xff0c;内参&#xff08;intrinsic parameters&#xff09;和外参&#xff08;extrinsic parameters&#xff09;是非常重要的概念。它们与相机的几何属性和姿态有关。 内参&#xff08;Intrinsic Parameters&am…...

基于ffmpeg与SDL的视频播放库

由于工作需要&#xff0c;自己封装的基于ffmpeg的视频编解码库&#xff0c;显示采用了SDL库。可以播放本地文件或网络流&#xff0c;支持多端口播放&#xff0c;支持文字叠加&#xff0c;截图、视频录制等等。 头文件代码&#xff1a; #pragma once #ifdef __DLLEXPORT #defin…...

基于二进制草蝉优化算法选择特征并使用 KNN 进行训练(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 基于二进制草蝉优化算法选择特征并使用KNN&#xff08;K-Nearest Neighbors&#xff0c;K最近邻算法&#xff09;进行训练是一种…...

14-4_Qt 5.9 C++开发指南_QUdpSocket实现 UDP 通信_UDP组播

文章目录 1. UDP组播的特性2. UDP 组播实例程序的功能3. 组播功能的程序实现4. 源码4.1 可视化UI设计4.2 mainwindow.h4.3 mainwindow.cpp 1. UDP组播的特性 下图简单表示了组播的原理。UDP 组播是主机之间“一对一组”的通信模式&#xff0c;当多个客户端加入由一个组播地址定…...

ai图片合成软件帮你创造个性绚丽

嘿&#xff01;悄悄告诉你一个小秘密&#xff0c;现在有一款超酷的软件&#xff0c;它能让你的图片变得活灵活现&#xff0c;就像跳出了屏幕一样&#xff01;没错&#xff0c;这就是ai图片制作软件&#xff01;想象一下&#xff0c;你拍摄了一张美丽的风景照片&#xff0c;但总…...

git 版本回退

git 没有push之前&#xff0c;可以用git reset --mixed回退&#xff0c;就是把add 的内容和commit的内容都撤销 在push之后&#xff0c;你只有2种操作 1.git reset 退回到你想要的那个版本 有配置选项 如果是soft就是当前版本删掉&#xff0c;之前改的代码保留&#xff0c;ha…...

使用Jackson自定义序列化操作(Jackson – Custom Serializer)

目录 Standard Serialization of an Object GraphCustom Serializer on the ObjectMapperCustom Serializer on the Class Standard Serialization of an Object Graph Data NoArgsConstructor AllArgsConstructor public class Item {public int id;public String itemName;p…...

Python-元组

元组&#xff08;Tuples&#xff09;详解 在Python中&#xff0c;元组&#xff08;Tuples&#xff09;是一种有序的数据类型&#xff0c;它可以包含任意类型的元素&#xff0c;包括数字、字符串、列表等。与列表相似&#xff0c;元组也是用来存储一组数据&#xff0c;但与列表…...

快速转换PDF文件: Python和PyMuPDF教程

解决问题 有时候将文档上传Claude2做分析&#xff0c;有大小限制&#xff0c;所以需要切割pdf文档为几个小点的文档&#xff0c;故才有了本文章。 如何用Python和PyMuPDF制作你想要大小的PDF&#xff1f; PDF是一种广泛使用的文件格式&#xff0c;可以在任何设备上查看和打印…...

规划模型Matlab代码

文章目录 数学规划定义一般形式分类 1.线性规划(linear programming)2.非线性规划(nonlinear programming)3. 整数规划(integer programming)4. 0-1规划(0-1 programming)5. 最大最小化模型6. 多目标规划模型7.敏感性分析&#xff08;对权重&#xff09;[例题] 数学规划定义 数…...

用html+javascript打造公文一键排版系统11:改进单一附件说明排版

一、用htmljavascript打造公文一键排版系统10中的一个bug 在 用htmljavascript打造公文一键排版系统10&#xff1a;单一附件说明排版 中&#xff0c;我们对附件说明的排版函数是&#xff1a; function setAtttDescFmt(p) {var t p;var a ;if (-1 ! t.indexOf(:))//是半角冒…...

snap xxx has “install-snap“ change in progress

error description * 系重复安装&#xff0c;进程冲突 solution 展示snap的改变 然后sudo snap abort 22即可终止该进程 之后重新运行install command&#xff5e;&#xff5e; PS: ubuntu有时候加载不出来&#xff0c;执行resolvectl flush-caches&#xff0c;清除dns缓存…...

Elasticsearch 性能调优指南

目录 1、通用优化策略 1.1 通用最小化法则 1.2 职责单一原则 1.3 其他 2、写性能调优 2.1 基本原则 2.2 优化手段 2.2.1 增加 flush 时间间隔&#xff0c; 2.2.2 增加refresh_interval的参数值 2.2.3 增加Buffer大小&#xff0c; 2.2.4 关闭副本 2.2.5 禁用swap 2…...

语音转文字神器!Speech Seaco Paraformer WebUI详细使用指南

语音转文字神器&#xff01;Speech Seaco Paraformer WebUI详细使用指南 1. 为什么你需要这个语音识别工具 在日常工作和学习中&#xff0c;我们经常遇到需要将语音内容转换为文字的场景。无论是会议记录、采访整理&#xff0c;还是视频字幕制作&#xff0c;传统的手动听写方…...

霜儿-汉服-造相Z-Turbo入门必看:从零启动到生成高清古风人像全流程

霜儿-汉服-造相Z-Turbo入门必看&#xff1a;从零启动到生成高清古风人像全流程 想亲手生成一张充满诗意的古风汉服人像吗&#xff1f;比如&#xff0c;一位身着月白霜花刺绣汉服的少女&#xff0c;在江南庭院的白梅树下&#xff0c;气质清冷&#xff0c;宛如从画中走来。这听起…...

技术指南|USB接口全解析:从Type-A到Type-C的演变与应用

1. USB接口的前世今生&#xff1a;从Type-A到Type-C的进化之路 记得我第一次接触电脑时&#xff0c;那个蓝色的USB接口让我印象深刻。当时只知道它叫"USB"&#xff0c;后来才知道那是Type-A接口。20多年过去&#xff0c;USB接口已经经历了翻天覆地的变化。从最初的T…...

像素幻梦·创意工坊应用场景:复古游戏资源批量生成与风格化迁移实战

像素幻梦创意工坊应用场景&#xff1a;复古游戏资源批量生成与风格化迁移实战 1. 像素艺术生成的新纪元 在独立游戏开发领域&#xff0c;像素艺术资源制作一直是个耗时费力的过程。传统方法需要美术师逐帧绘制&#xff0c;一个简单的角色动画可能需要数百张图片。Pixel Dream…...

别再只会‘永不在此停止’了!实战绕过网站JS混淆与内存爆破的三种硬核方法

实战突破&#xff1a;三种硬核方法破解JS混淆与内存爆破 打开开发者工具的那一刻&#xff0c;页面突然卡死&#xff0c;控制台不断弹出debugger断点——这可能是每个爬虫工程师都经历过的噩梦。当简单的"永不在此停止"失效时&#xff0c;我们需要更高级的技术手段来应…...

Qwen3-VL-30B快速上手:开箱即用,打造你的专属多模态AI

Qwen3-VL-30B快速上手&#xff1a;开箱即用&#xff0c;打造你的专属多模态AI 1. 为什么选择Qwen3-VL-30B&#xff1f; 在当今AI技术飞速发展的时代&#xff0c;多模态模型正成为行业新宠。Qwen3-VL-30B作为Qwen系列的最新力作&#xff0c;带来了多项突破性升级&#xff1a; …...

Mirage Flow 运维效率提升实战:智能日志排查与故障自愈方案

Mirage Flow 运维效率提升实战&#xff1a;智能日志排查与故障自愈方案 你是不是也经历过这样的深夜&#xff1f;告警短信突然炸了锅&#xff0c;几十上百条日志涌进来&#xff0c;你得像侦探一样&#xff0c;在成百上千行日志里大海捞针&#xff0c;试图找出那个导致系统崩溃…...

DeepSeek LeetCode 1210. 穿过迷宫的最少移动次数 public int minimumMoves(int[][] grid)

我来分析 LeetCode 1210 “穿过迷宫的最少移动次数” 的解题思路和实现。 问题分析 我们有一条长度为 2 的蛇&#xff0c;需要从起点 (0,0) 和 (0,1)&#xff08;水平放置&#xff09;移动到终点 (n-1, n-2) 和 (n-1, n-1)&#xff08;仍为水平放置&#xff09;。蛇可以&#x…...

Java学习——数据类型

目录 一、概述 二、基本数据类型 1、数值型 2、字符型 3、布尔型 三、引用数据类&#xff08;后期补充&#xff09; 1、类 2、接口 3、数组 4、枚举 5、注解 四、数据类型转换 1、概述 2、隐式转换&#xff08;自动类型转换&#xff09; 3、显式转换&#xff08…...

别再花钱买模板了!用扣子(Coze)和剪映,5分钟搞定城市宣传视频(保姆级节点配置)

零成本打造城市宣传片&#xff1a;Coze剪映全流程实战指南 想象一下这样的场景&#xff1a;你刚接手一个本地文旅推广项目&#xff0c;预算只够买两杯咖啡&#xff0c;但甲方期待的是《航拍中国》级别的视觉大片。传统解决方案要么外包烧钱&#xff0c;要么自己熬夜学剪辑到崩溃…...