【练习】使用DevEco Studio编写计数器案例

news2024/11/13 6:30:53

效果展示

默认状态
点击加号
点击减号

知识点

 类型转换(数字 和 字符串)

字符串转数字
方法说明例子
Number()字符串 直接转数字,转换失败返回NaN(字符串包含非数字)
let str1: string = '1.1'
console.log(Number(str1))//1.1

let str2: string = '1.9'
console.log(Number(str2))//1.9

let str3: string = '1.1a'
console.log(Number(str3))//NaN

parseInt()去掉小数部分 转数字,转换失败返回NaN
let str1: string = '1.1'
console.log(parseInt(str1))//1

let str2: string = '1.9'
console.log(parseInt(str2))//1

let str3: string = '1.1a'
console.log(parseInt(str3))//1

let str4: string = 'a'
console.log(parseInt(str4))//NaN

parseFloat()保留小数部分 转数字,转换失败返回NaN
let str1: string = '1.1'
console.log(parseFloat(str1))//1.1

let str2: string = '1.9'
console.log(parseFloat(str2))//1.9

let str3: string = '1.1a'
console.log(parseFloat(str3))//1.1

let str4: string = 'a'
console.log(parseFloat(str4))//NaN

数字转字符串
方法说明例子
toString()

数字直接转字符串

let num1: number= 1.1
console.log(num1.toString())//'1.1'

let num2: number= 1.9
console.log(num2.toString())//'1.9'
toFixed()四舍五入转字符串,可设置保留几位小数
let num1: number= 1.1
console.log(num1.toFixed())//'1'

let num2: number= 1.9
console.log(num2.toFixed())//'2'

let num2: number= 1.9152
console.log(num2.toFixed(2))//'1.92'

点击事件

说明:组件 被点击时 触发的事件

作用:监听(感知)用户点击行为,进行对应操作

语法:onClick((参数)=> {})

状态管理

普通管理:只能在初始化时渲染,后续将不会再刷新。

状态变量:需要装饰器【@State】装饰,改变会引起UI的渲染刷新(必须设置 类型 初始值

状态管理的基本流程图

注意:定义在 组件内 普通变量或状态变量,都需要通过this访问

 代码展示

@Entry
@Component
struct Index {
  @State num: number = 1;

  build() {
    Row({ space: 10 }) {
      Button() {
        Text("-")
          .fontSize(40)
          .lineHeight(50)
          .fontColor("#fff")
      }
      .width(50)
      .height(50)
      .onClick(() => {
        this.num--
      })

      Text(this.num.toString())
        .fontSize(20)
      Button() {
        Text("+")
          .fontSize(40)
          .lineHeight(50)
          .fontColor("#fff")
      }
      .width(50)
      .height(50)
      .onClick(() => {
        this.num++
      })
    }.padding(10)
  }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1975167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

游戏服务架构之 网关

游戏服务架构 长连接 游戏服务的一个特点是,需要维护大量的长连接来保证用户与游戏间的通信,比如tcp长连接、websocket双工通信等。 多服务 游戏类服务器,为了各个模块之间不相互影响,一般都是微服务的方式实现,比…

二叉树前序后序中序遍历

二叉树前序后序中序遍历 创建二叉树代码 private static class TreeNode {public final int value;public TreeNode left;public TreeNode right;public TreeNode(int value) {this.value value;} }public static TreeNode createTree(int[] treeArr) {TreeNode[] root new…

HarmonyOS应用开发者高级认证多选题答案(95%高正确率,8.3更新)

【多选题分数占比高,多选高分,单选稍微做下就能考试通过!】 【多选题分数占比高,多选高分,单选稍微做下就能考试通过!】 【多选题分数占比高,多选高分,单选稍微做下就能考试通过&a…

MongoDB聚合操作详解

文章目录 聚合操作聚合管道管道(Pipeline)和阶段(Stage)常用的聚合阶段运算符准备数据集,执行脚本$project$match$count$group$unwind$limit$skip$sort$lookup聚合操作案例1聚合操作案例2 聚合优化执行顺序内存排序 整…

2024有哪些开放式耳机值得入手!开放式耳机推荐!

耳机基本上已经成为我们日常生活中的必需品,开放式蓝牙耳机以其独特的设计,提供了更为自然和安全的听音体验,为了帮助大家更好的选择开放式耳机,我挑选了几个小技巧以及我自用过后觉得还不错的五款耳机推荐给大家。 一、耳机佩戴…

Day6

模板的继承 在一个网页中,可能会出现几个页面样式几乎不变的情况。 确实是可以在每个html文件中写重复代码,但是,假如说后期运维的话,如果需要在某一处修改数据,那用过这个代码的都得逐一修改,这样的运维…

端到端自动驾驶:挑战与前沿

End-to-end Autonomous Driving: Challenges and Frontiers 端到端自动驾驶:挑战与前沿 Abstract The autonomous driving community has witnessed a rapid growth in approaches that embrace an end-to-end algorithm framework, utilizing raw sensor input …

Wiley 旗下一区 Top 期刊编委集体辞职!难道OA真的才是大势所趋?

【SciencePub学术】Wiley作为和Springer Nature、Elsevier并驾齐驱的三大出版商之一,在不久前又被爆出,其旗下一本稳定检索了53年的老牌期刊《Philosophy & Public Affairs》,编委集体辞职! 其实,这已经不是Wiley出…

CmsEasy逻辑漏洞--零元购

CmsEasy逻辑漏洞--零元购 选择购买MackBook 购买成功后会员中心发现多出8100快钱 然后就可以正常购买了

@antv/x6 利用interacting方法来设置禁止结点移动的方法实现。

1、官网有个设置说明。 https://x6.antv.antgroup.com/api/graph/graph 2、然后有可行的方法一: let graph new Graph({container: document.getElementById(container),interacting: function (cellView) {if (cellView.cell.getData() ! undefined && …

行为型设计模式2:观察者/职责链/中介者/访问者

设计模式:观察者/职责链/中介者/访问者 (qq.com)

【Android Studiio】default activity 原生安卓和uniapp默认启动分析(uniapp添加MainActivity)

文章目录 思路: 一、原生安卓二、uniapp三、在uni-app项目中,如果你想要加入自定义的MainActivity(例如Android平台) 探究方向:找到Default Activity 思路: 在Android开发中,"default ac…

谷粒商城实战记录-虚拟机开启密码认证登录

文章目录 一,虚拟机无法用用户名密码登录二,解决方案1,修改配置2,重启sshd服务3,测试SSH登录注意事项结论 参考文献 一,虚拟机无法用用户名密码登录 当使用Vagrant创建和管理虚拟机时,通常会通…

以太网ICMP测试实验

目录 一.概述 1.1IP协议 1.1.1IP协议简介 1.1.2IP协议首部报文格式 1.2ICMP协议 1.2.1ICMP协议简介 1.2.2ICMP报文格式 二.实验任务 三.模块设计 3.1总体模块设计 3.2ICMP模块设计 3.2.1icmp_rx 模块 3.2.2icmp_tx模块 四.modelsim仿真 4.1icmp_rx模块仿真 4.2i…

完美平替navicat的数据库软件DBeaver,免费开源,功能强大,使用简单

DBeaver Community 是一个免费的跨平台数据库工具,适用于开发人员、数据库管理员、分析师和所有与数据打交道的人。它支持所有流行的 SQL 数据库,如 MySQL、MariaDB、PostgreSQL、SQLite、Apache Family 等 1.到官网下载win版本直接安装 https://dbeav…

从一到无穷大 #32 TimeCloth,云上的快速 Point-in-Time Recovery

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。 文章目录 引言解决方案FAST FINE-GRAINED PITRLog FilterInter-Record Dependency ResolutionL…

全球氢燃料电池汽车市场规划预测:未来六年CAGR为44.4%

一、引言 随着全球能源转型和环保意识的提升,氢燃料电池汽车作为清洁能源汽车的重要组成部分,其市场潜力日益凸显。本文旨在探索氢燃料电池汽车行业的发展趋势、潜在商机及其未来展望。 二、市场趋势 全球氢燃料电池汽车市场的增长主要受全球环保政策推…

springboot辽B代驾管理系统论文源码调试讲解

2 相关技术 2.1 MySQL数据库 本研究与开发的应用程序在数据操作中难以预料,有时候甚至产生变化。没有办法直接在Word中写数据信息,这不但不安全,并且难以达到应用程序的功能。想要实现所需要的文档存储功能,务必选择专业数据库存…

奥运会Ⅲ--AI风险矩阵

问满屋子的人工智能专家:“我们如何知道我们的人工智能是否安全可靠?”你可能会得到十几个不同的答案,每个答案都比上一个更复杂。似乎不知何故,在 OpenAI 成为地球上增长最快的公司一年零几个月后,每个人都是 LLM&…

CANOpen EMCY紧急报文介绍

什么是CANOpen紧急报文 CANOpen中的Emcy紧急报文用于当设备出现故障或警告时,向其它节点报告故障或警告使用的。如设备某个设备出现过压或过流时,就可以发送紧急报文。 紧急报文的格式 错误代码:是0x1003索引预定义错误字段的内容&#xff…