当前位置: 首页 > 科技观察

HarmonyOSJS开发14购物计算组件&表单组件定制构建

时间:2023-03-14 12:38:24 科技观察

详情请访问:Harmonyos.51cto.com/#zz1。前言:做完第九篇的购物车,忘记了一个很关键的计算部件。鸿蒙的组件中没有这个计算组件,所以今天定义一个。这个组件和我们之前做的是一样的。购物车的小件物品放在一起。直男缺乏美感,所以我们就模仿别人:2.组件介绍:这里(以后也会用到)使用了一个标签:。这个标签会和表单一起使用,比如搜索框、登录页面等都会使用.input>.input>标签来指定用户可以输入数据的输入域。type属性指定输入元素的类型。根据不同的类型属性,输入域有多种形式。输入字段可以是文本字段、复选框、密码字段、单选按钮、按钮等。今天使用的是文本字段、复选框字段和密码字段。3.js业务逻辑层:click事件onclick后,+操作的执行没有上限,但是-操作在实际应用中一般减1后停止执行(比如item的个数在购物车中)。这里我们做一个提示框,表示已经降到最低了。importpromptfrom'@system.prompt';exportdefault{data:{title:'World',num:1,},addnum(){++this.num;},reducenum(){if(this.num>1){--this.num;}else{prompt.showToast({message:"抱歉,至少有一个商品",duration:5000,})}}}4.视图层:这里type的值可以接收text,同一个也可以是数。读者可自行尝试。-+

5.css属性设置:.container{width:100%;height:1200px;display:flex;justify-content:center;align-items:center;}.countview{width:300px;height:120px;/**border:3pxsolidred;**/display:flex;justify-content:center;align-items:center;border-radius:100px;}.tv1{width:70px;height:70px;font-size:60px;font-weight:bold;text-align:center;border:3pxsoliddarkgray;border-radius:35px;background-color:white;color:darkgrey;}.tv2{width:70px;height:70px;font-size:50px;font-weight:bold;text-align:center;border:4pxsolid#FFB964;border-radius:35px;背景颜色:#FFB964;颜色:白色;}.inputview{宽度:200px;高度:100%;背景颜色:white;font-weight:bold;font-size:50px;margin-left:30px;}6.效果展示:这里使用了input的type属性的text域和password域。使用这两个可以做一个登录页面大家都知道点击输入框时光标会闪烁,也就是需要获取焦点。获取焦点的事件是onfocus。取消焦点的事件是onblur。当我们点击input的父容器,我们获得了焦点,我们就可以进入该字段了,为了更直观的看到获得焦点成功,我设置了图标的颜色。未获取时图标为灰色,获取成功后为红色。如下图所示:placeholder是未输入用户名和密码框时默认显示的灰色文字。未输入字段时出现,输入字段具有焦点时消失。js业务逻辑层:exportdefault{data:{title:'World',flag:false,},click(){this.flag=true;},click1(){this.flag=false;}}视图层:
登录css属性设置:.container{width:100%;height:1200px;display:flex;justify-content:center;align-items:center;flex-direction:column;}。一个{宽度:80%;高度:150px;背景颜色:rgb(242,243,247);边框半径:100px;边距:20px;显示:flex;align-items:center;}.img1{宽度:80px;高度:80px;}.input1{height:100%;font-size:50px;focus-color:rgb(109,131,170);}.bottom{width:280px;height:280px;border-radius:140px;background-color:rgb(192,192,190);margin:60px;font-size:100px;}.but{display:flex;justify-content:center;}欢迎读者订阅我的专栏:【HarmonyOS开发从0到1】https://harmonyos.51cto.com/column/35更多信息请访问:与华为共同建立的Harmonyos技术社区https://harmonyos.51cto.com/#zz