第二类数字(Number)的操作 

2.1普通数字的显示

vue中直接显示
<template>
<div><h3>学习Vue</h3><div>{{ num }}</div>
</div></template><script lang="ts" setup>import  {ref} from  "vue"
const   num  = ref(10)</script>
Harmony中 有数据类型的约束,是有数字类型的组件中才有用,也不能直接使用

错误一

错误二 Text组件只能放字符串

正确的写法  Text里面接受字符串   height里面接受数字类型  鸿蒙中是强语言数据类型

@Entry
@Component
struct MyString {@State  num:number  = 10build() {Column() {Text(`${this.num}`).height(this.num)}.height('100%').width('100%')}
}

2.2 数字的计算

vue中 {{}} 两个大括号中可以直接计算   
<template>
<div><h3>学习Vue</h3><div>{{ num +n}}</div>
</div></template><script lang="ts" setup>import  {ref} from  "vue"
const   num  = ref(10)
const  n  = ref(100)</script>
Harmony中 变量的也可以直接操作,但是也需要组件支持数字类型
@Entry
@Component
struct MyString {@State  num:number  = 10;@State  n:number  = 100;build() {Column() {Text(`${this.num+this.n}`).height(this.num)}.height('100%').width('100%')}
}

巧妙的使用``   模版字符串 中${}里面可以放表达式计算

2.3 与表单元素的绑定和字符串操作一样

不清楚的看上一篇文章 v-model和$$的故事,注意数据类型的匹配,不然鸿蒙中会报错

再看第三类布尔值(Boolean)的操作 

第三类   布尔值(Boolean)的操作 

这玩意 实际上也就是对错的操作,对错针对页面就是显示与否,状态有还是没有

3.1  Boolean值的显示

vue中会把布尔值转成字符串输出
<template>
<div><h3>学习Vue</h3><div>{{ flag }}</div>
</div></template><script lang="ts" setup>import  {ref} from  "vue"
let flag = ref(true)</script>

Harmony中会把布尔值转成字符串输出  

鸿蒙没办法直接输出 boolean 值  放在Text中,Text又只支持string

@Entry
@Component
struct MyString {@State flag:boolean = truebuild() {Column() {Text(`${this.flag}`)}.height('100%').width('100%')}
}

3.2  Boolean判断显示

vue中   用 v-if  v-else-if  v-else 相关的指令
<template>
<div><h3>学习Vue</h3><div><div v-if="flag">显示</div><button @click="change">修改状态</button></div>
</div></template><script lang="ts" setup>
import  {ref} from  "vue"const flag = ref(true);const change  =()=>{flag.value  = !flag.value;
}</script>
Harmony中用 if表达式   里面没有指令了
@Entry
@Component
struct MyString {@State flag:boolean = truebuild() {Column() {if(this.flag){Text(`显示`)}Button("改变").onClick(()=>{this.flag  = !this.flag})}.height('100%').width('100%')}
}

点击就可以切换了

3.3 Boolean 判断显示2

vue中   v-show的控制   常见vue问题 v-if和v-show的区别
<template>
<div><h3>学习Vue</h3><div><div v-show="flag">显示</div><button @click="change">修改状态</button></div>
</div></template><script lang="ts" setup>
import  {ref} from  "vue"const flag = ref(true);const change  =()=>{flag.value  = !flag.value;
}</script>

区别  if不满足没有真实DOM  show的都会有

Harmony中用 visibility的属性方法来解决  配合三元(三目)运算符
@Entry
@Component
struct MyString {@State flag:boolean = truebuild() {Column() {Text(`显示`).visibility(this.flag? Visibility.Visible:Visibility.Hidden)Button("改变").onClick(()=>{this.flag  = !this.flag})}.height('100%').width('100%')}
}

但是为占位置哟

显示的效果为

不显示的效果为  中间有空行

总结

本文对比了Vue和Harmony(鸿蒙)在数字和布尔值操作上的差异。数字操作方面,Vue可直接在模板中显示和计算数字,而Harmony需要严格遵循数据类型约束,通过模板字符串${}进行表达式计算。布尔值操作上,Vue使用v-if/v-show指令控制显示,Harmony则通过if表达式和visibility属性实现,其中v-show对应visibility属性,会保留DOM位置。文章还指出鸿蒙组件对数据类型的强约束性,如Text组件只接受字符串。两种框架在数据绑定和显示控制上各有特点,需要开发者注意数据类型匹配和语法差异。

未完待续 欢迎加入 鸿蒙学堂 继续学习

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python自动化测试实战:reCAPTCHA V3绕过技术深度解析

Python自动化测试实战&#xff1a;reCAPTCHA V3绕过技术深度解析 摘要 reCAPTCHA V3作为Google推出的无感验证码系统&#xff0c;通过先进的机器学习算法分析用户行为模式&#xff0c;已成为当前最主流的反机器人解决方案。本文将深入解析其核心检测机制&#xff0c;并提供完…

简单Modules 的配置与管理,灵活应对多版本软件环境的需求。

参考文档 官方手册&#xff1a;https://modules.readthedocs.io Modulefile 语法&#xff1a;modulefile — Modules documentation Environment Modules 工具 Environment Modules 是一个环境管理工具&#xff0c;用于动态加载、卸载和管理不同版本的软件环境变量&#xff…

java内部类-匿名内部类

匿名内部类必须有一个已经存在的类或者接口

上篇:《排序算法的奇妙世界:如何让数据井然有序?》

个人主页&#xff1a;strive-debug 排序算法精讲&#xff1a;从理论到实践 一、排序概念及应用 1.1 基本概念 **排序**&#xff1a;将一组记录按照特定关键字&#xff08;如数值大小&#xff09;进行递增或递减排列的操作。 1.2 常见排序算法分类 - **简单低效型**&#xff…

2025.8.6 图论(1)Solution

2025.8.6 图论&#xff08;1&#xff09;Solution 割点 学习资料&#xff0c;在 csdn 或洛谷上看都行。是模板题题解&#xff08;之一&#xff09;。 T1&#xff1a;Atserckcn与逃离恐怖老师。 题意简述&#xff1a;从一个图中选定一个点&#xff0c;使得删除这个点后图不连…

OpenBayes 教程上新丨一键部署 gpt-oss-20b,实测开源推理模型新 SOTA,性能直逼 o3‑mini

时隔 6 年&#xff0c;自 GPT-2 以来&#xff0c;OpenAI 终于再度发布开源大模型——gpt-oss-120b 和 gpt-oss-20b&#xff0c;前者以千亿级参数专为复杂推理与知识密集型场景设计&#xff0c;后者则更适合低延迟、本地或专业垂直领域使用&#xff0c;可在消费级硬件&#xff0…

nlp-句法分析

目录 一、句法概述 1、成分语法理论概述 &#xff08;1&#xff09;分析过程 &#xff08;2&#xff09;缺点 2、依存语法理论概述 &#xff08;1&#xff09;依存关系、配价模式 &#xff08;2&#xff09;分类 &#xff08;3&#xff09;优势&#xf…

linux磁盘加密

在Linux中&#xff0c;磁盘加密是一种保护数据不被未授权访问的方法。有多种工具和策略可以实现磁盘加密&#xff0c;包括使用Linux内核的内置功能&#xff0c;如dm-crypt&#xff0c;以及使用更高级的解决方案&#xff0c;如LUKS&#xff08;Linux Unified Key Setup&#xff…

大数据架构演变之路

目录 一、各阶段的架构简介 二、各个架构的详细解释 1. 传统离线架构 2.1. Lambda架构-离线数仓分析实时链路分析 2.2. Lambda架构-离线数仓实时数仓 3. Kappa/流批一体架构 4. 湖仓一体架构 三、总结 一、各阶段的架构简介 技术架构 核心驱动(核心需求) ‌关键技术 …

STM32 HAL库驱动0.96寸OLED屏幕

STM32 HAL库驱动0.96寸OLED屏幕 项目概述 本项目使用STM32 HAL库为0.96寸OLED屏幕编写驱动程序。OLED屏幕通过I2C接口与STM32单片机通信&#xff0c;实现文本、数字和图形的显示功能。 项目仓库地址&#xff1a;STM32_Sensor_Drives 硬件连接 OLED屏幕通过I2C接口与STM32连…

横向越权:修改参数访问不属于自己的数据

一、什么是横向越权定义 横向越权&#xff08;Horizontal Privilege Escalation&#xff09;是指 同一权限级别的用户&#xff0c;通过篡改请求参数或资源标识&#xff0c;访问本不属于自己的数据或功能。例子 假设一个在线商城&#xff0c;用户 A 访问订单详情的 URL&#xff…

攻击实验(ARP欺骗、MAC洪范、TCP SYN Flood攻击、DNS欺骗、DHCP饿死)

实验一 ARP欺骗一、拓扑二、实验准备、1.设置终端漏洞靶机集合选择需要的数量和镜像打开设备上的驱动精灵安装网卡安装成功后查看IP地址、网关信息等。三、实验步骤1.实验原理中间人&#xff08;攻击者&#xff09;在终端与网关之间持续发送伪造的 ARP 应答包&#xff0c;双向欺…

VSCode 禁用更新检查的方法

通过设置菜单禁用 这是最直接和推荐的方法&#xff0c;可以永久禁用自动更新&#xff1a; 打开 VSCode。点击左下角的齿轮图标&#xff0c;然后选择“设置”。或者通过菜单栏“文件” > “首选项” > “设置”进入。在顶部的搜索框中输入“update”。找到“Update: Mode”…

Flutter - 应用启动/路由管理

一、应用入口1. 初始化 Flutter 底层绑定 &#xff0c;运行 App。import package:flutter/material.dart; import package:flutter_base/Application.dart;void main() {// 确保绑定初始化WidgetsFlutterBinding.ensureInitialized();// App初始化Application.init(); }2. 注册…

MySQL 数据操作全流程:创建、读取、更新与删除实战

MySQL系列 文章目录MySQL系列前言一、Create(创建)并插入数据1.1 单行数据 全列插入1.2 多行数据 指定列插入1.3 插入冲突时同步更新1.4 冲突时替换二、Retireve读取数据2.1 全列查询2.2 查询指定列2.3 查询字段为表达式2.4 结果去重 DISTINCT2.5 where条件筛选2.6 order by语…

SQL约束:数据完整性的守护者

在SQL中&#xff0c;约束&#xff08;Constraints&#xff09; 是作用于数据库表字段上的规则&#xff0c;用于强制保证数据的完整性、准确性和一致性。当插入、更新或删除数据时&#xff0c;约束会自动验证操作是否符合规则&#xff0c;若违反则拒绝执行。 以下是SQL中常见的约…

Springboot-vue 地图展现

在很多社区管理系统中&#xff0c;地图展示功能是一个重要的模块&#xff0c;它能直观地呈现小区的地理位置分布。本文将详细梳理从前端触发请求到地图上展示小区数据的完整流程&#xff0c;帮助大家理解前后端协同工作的具体细节。一、前端触发&#xff1a;页面加载与地图初始…

Vue 3 登录组件

Login.vue 组件详细分析整体架构 Vue 3 登录组件&#xff0c;采用 Composition API Element Plus UI 库&#xff0c;实现了完整的用户认证界面。 模板结构分析 1. 容器布局 <div class"login-container"><el-card class"login-card"><!-- …

小结: getSpringFactoriesInstances从 `spring.factories` 文件中加载和实例化指定类型的类

getSpringFactoriesInstances 方法工作原理 getSpringFactoriesInstances 是 Spring Boot 框架中的一个核心方法&#xff0c;用于从 spring.factories 文件中加载和实例化指定类型的类。这是 Spring Boot 实现自动配置和插件化扩展的关键机制。 1. 基本功能 该方法的主要作用是…

selenium SessionNotCreatedException问题解决办法

在上周有一台服务器重启之后&#xff0c;Chrome浏览器也自动升了级&#xff0c;原本能够正常使用的自动化办公程序突然没法用了&#xff0c;出现了下面的报错提示。codes/addCancelBdld.py:980: DeprecationWarning: use options instead of chrome_optionsdriver webdriver.C…