首页 > 其他分享 >【ArkTS】CheckBox组件选中状态失效

【ArkTS】CheckBox组件选中状态失效

时间:2023-03-01 14:24:54浏览次数:40  
标签:状态 ArkTS CheckBox 打印 选中 组件 日志

【关键字】

ArkTS、CheckBox组件、HarmonyOS

 

【问题描述】

需求如下:

使用ArkTS的CheckBox组件设置选项的状态,通过变量保存最后的选中状态,然后在重新打开界面时能够显示上次保存的选中状态,目前编写的代码如下:

cke_1499.png

遇到的问题:

将上图中的代码运行之后,发现第一次点击复选框之后状态取消,第二次点击之后状态选中随后又自动取消了,这跟预先构想的选中-取消依次交替变化的情况不一样,这是什么情况呢?

补充说明:上述代码使用的是api 8。

 

【问题分析】

在代码调试的过程中发现控制台有打印如下报错日志:

cke_2683.png

从原有的日志打印中可以看到打印出的值是0和1,而非true or false,日志中报错是在setSelect的时候,找到select属性的文档说明,该参数要求必须是布尔类型,推测是由于参数类型不一致导致的报错:

cke_3605.png

这个应该是ArkTS的底层编译机制,在实际打印时value不是布尔值,经过实际测试,打印出来的类型是number类型,所以是打印的数字0和1,如果外层使用包装类Boolen()包装一下,则打印出来的值就是正常的true or false了,如下图所示:

cke_4701.png

因此,如果您将代码修改为以下这种强制转为boolean类型的方式:

cke_5955.png

则日志打印中是正常的,并且也不会出现最开始的问题:

cke_7478.png

【解决方案】

经过上述2中的分析,可以得到如下的解决方案:即,设置.select(!!this.mirrorSymmetry)

cke_9173.png

OK,今天的内容就到这里了,下期再会!

​ 欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

标签:状态,ArkTS,CheckBox,打印,选中,组件,日志
From: https://www.cnblogs.com/developer-huawei/p/17168018.html

相关文章

  • 如何实现一个公共组件库上传到npm并在项目中使用
    一般多个项目使用一些公共组件的时候,我们没必要在每个项目里写公共组件代码,我们可以将公共组件封装成一个库,上传至npm,这样我们在项目中使用就可以直接从npm下载直接使用。当......
  • Go组件库总结之事件注册唤醒
    本篇文章我们用Go实现一个自定义事件注册并等待唤醒的机制,其中涉及到的链表操作可以参考上一篇文章。文章参考自:https://github.com/brewlin/net-protocol1.自定义唤醒事......
  • vue 父子组件之间传值
    在vue中父子组件传值是必不可少的,大家必须要学会! 首先父组件向子组件传值: 父组件:比如我们传teacher为index,如果我们传值变量可以使用:绑定我们在data中定义的变量。......
  • 基于OMAPL138+FPGA核心板多核软件开发组件MCSDK开发入门(上)
    本文测试板卡为创龙科技SOM-TL138F是一款基于TIOMAP-L138(定点/浮点DSPC674x+ARM9)+紫光同创Logos/XilinxSpartan-6低功耗FPGA处理器设计的工业级核心板。核......
  • 界面组件DevExpress WinForms v22.2 - 全面升级数据展示功能
    DevExpressWinForms拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务解决方案。DevExpressWinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office......
  • Vue2 组件总结
    注册全局组件使用Vue.component(...)的方式创建全局组件,注册属性,创建模版props属性:父组件传递数据到子组件。高级内容:Prop属性、Prop验证等this.$emit:将事件传......
  • VUE绑定Layui中的checkbox,页面不显示
    VUE绑定Layui中的checkbox,页面不显示,估计是layui中没有render的问题,但动态加载完数据,给form.render(),还是不显示,网上看其他人的做法,居然解决了mounted:function(){......
  • 封装avalonia指定组件允许拖动的工具类
    封装avalonia指定组件允许拖动的工具类创建Avalonia的MVVM项目,命名DragDemo,然后将项目的Nuget包更新到预览版<ItemGroup><PackageReferenceInclude="Aval......
  • 【FFH】自制一款ArkUI组件-应用文件管理器(一)
    前言介绍使用示例1.实现思路1.1接口函数1.2代码思路效果图GIF前言在涉及应用内部存储的开发时,常常翻阅手机自带的文件管理检查。正好在学习文件管理的接口,想着......
  • 注册组件
    注册组件一个Vue组件在使用前需要先被“注册”,这样Vue才能在渲染模板时找到其对应的实现。组件注册有两种方式:全局注册和局部注册。全局注册更改main.js文件如下:......