Day2鸿蒙应用开发学习总结_鸿蒙js list循环动态赋值_m0_49334418的博客-程序员秘密

技术标签: 鸿蒙  编程  javascript  harmonyos  

1、let和var的异同

(1)不同之处

js块级作用域:

使用 var 关键字声明的变量不具备块级作用域的特性,它在 {} 外依然能被访问到。

{ 
    var x = 2; 
}
// 这里可以使用 x 变量

let 声明的变量只在 let 命令所在的代码块 {} 内有效,在 {} 之外不能访问。

{ 
    let x = 2;
}
// 这里不能使用 x 变量

循环作用域:

使用var在循环体内定义的变量可以作用于循环体内外,而使用let在循环体内定义的变量只作用于循环体内。

(2)相似之处

在函数体内使用var和let关键字声明的变量有点类似,它们的作用域都是局部的,例如

// 使用 var
function myFunction() {
    var carName = "Volvo";   // 局部作用域
}

// 使用 let
function myFunction() {
    let carName = "Volvo";   //  局部作用域
}

都只在作用于函数体内。

在函数体外使用var和let关键字声明的变量也有点类似,它们的作用域都是全局的,例如:

// 使用 var
var x = 2;       // 全局作用域

// 使用 let
let x = 2;       // 全局作用域

注意:在JS中,let是在ES6新增加的新增的关键字,在ES6之前则没有该关键字,除了let之外,ES6还新增了另一个关键字const,其声明一个只读的常量,一旦声明,常量的值就不能改变。

2、根据滑动滑动方向跳转页面

首先在.hml文件的第一个div中添加onswipe属性

<div class="container" onswipe="toNextPage">
    <text class="title1">
       第二个训练报告页面
    </text>
</div>

 然后在.js文件中添加在onswipe属性中定义的函数toNextPage()

import router from '@system.router';

export default {
    data: {
    },

    toNextPage(e){
       switch(e.direction){
               case 'left':
               router.replace(
                   {
                       uri:"pages/index/index"
                   }
               );
               case 'down':
               router.replace(
                   {
                       uri:"pages/index/report1/report1"
                   }
               );
       }
},
}

e:形参

e.direction:判断滑动方向

switch:选择结构语句,当滑动方向为左时,跳转到主页面,当滑动方向为下时,跳转到第一个训练报告

这里还用到的一个知识点是页面路由router,需要导入router模块,如第一条代码所示,然后用uri指定要跳转的页面地址。

3、进度条

<progress class="progress-bar" percent="{
   {$item.percent}}" style="color: {
   {$item.color}};" />

percent表示进度条的百分比,color表示进度条的颜色

其中{ { }}用于动态赋值,$item用于循环赋值,如下如所示,在.js文件中添加一个字典,设percent和color为key值。

export default {
     data:{
        states:[
            {
               
               percent:0,
               color:'#ffa500'
            },
            {
               
                percent:0,
                color:'#ffff00'
            },
            {
                
                percent:0,
                color:'#00ffff',
            },
            {
               
                percent:0,
                color:'#0000ff'
            }
        ]
    },
    }

在list-item中添加for属性(list-item为list的一个子组件,list用于创建列表)

 <list class="state-wrapper" >
        <list-item class="state-item" for='{
   {states}}'>
            <progress class="progress-bar" percent="{
   {$item.percent}}" style="color: {
   {$item.color}};" />
        </list-item>
    </list>

运行后就可以创建出四个进度条,效果如图下所示:

注:这里的percent我随机给它赋值了。

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_49334418/article/details/118762276

智能推荐

log4j.properties 输出指定类日志_aozhao8862的博客-程序员秘密

比如,我只要众多日志中,红色框的日志,则可以指定类:com.dangdang.ddframe.rdb.sharding.parser.SQLParserFactory修改配置文件:再次输出结果为:转载于:https://www.cnblogs.com/zhangyuanqiang/p/10108312.html...

HTML入门小实例_html入门实例_前端独秀的博客-程序员秘密

页面布局的三种方式: a、TABLE布局:已过时 b、DIV+CSS:当前主流 c、HTML5布局标签:未来趋势 1、学生成绩表设计 注意: <body> <table height="250px...

Java 10 新特性概述_若明天不见的博客-程序员秘密

  Java 10是其23年历史中最快发布的java版本。Java因其缓慢的增长和发展而受到批评,但Java 10刚刚破坏了这个概念。Java 10是一个具有许多未来变化的版本,其范围和影响可能并不明显,但却很深远。  在本文中,我们将讨论Java10发行版中添加的各种功能。在此之前,让我们回顾一下java发布模型中引入的一些变化。长期支持模型  从2017年开始,甲骨文和Java社区...

[DDR]3 - Understanding Timing Parameters__山猫的博客-程序员秘密

DDR4 SDRAM - Understanding Timing ParametersIntroductionThere are a large number of timing parameters in the DDR standard, but when you work with DDR4 SDRAM you’ll often find yourself revisiting or reading about a handful of timing parameters more often

java.lang.StackOverflowError: null_stackoverflowerror null_zfyljx的博客-程序员秘密

出现栈内存溢出的常见原因有2个: 1. 函数递归调用层次过深,每调用一次,函数的参数、局部变量等信息就压一次栈,并且没有及时出栈。 2. 局部静态变量体积太大第二种情况也比较常见,比如在函数里定义很大的局部变量(例如大数组),这种情况可以将局部变量改为静态变量(实质上也是全局变量)。StackOverflowError在程序栈空间耗尽时抛出,通常是深度递归导致。StackOverflowEr...

软件资源_nomarl的博客-程序员秘密

系统软件:   发行时间:   《新泰Ghost WIN98SE超级全自动安装光盘(200506版)》 2005-12-15

随便推点

Java使用SFTP和FTP两种连接方式实现对服务器的上传下载_醉梦洛的博客-程序员秘密

转载路径:https://blog.csdn.net/a745233700/article/details/79322757一、Java实现对SFTP服务器的文件的上传下载1、添加maven依赖:&lt;dependency&gt; &lt;groupId&gt;com.jcraft&lt;/groupId&gt; &lt;artifactId&gt;jsch&lt;...

Uiautomator自动化测试编写和调试---小白入门超详细_趣味小白猪的博客-程序员秘密

  Uiautomator建立自动化测试项目1.建立java项目(1)选择File-New-JavaProject(注意:是java proect) (2)输入Project Name输入Project name:GldTest,选择JRE自己的版本,点击Next,下一步 (3)添加Android库路径sdk\platforms\android-...

httpclient 使用_艾比aibi的博客-程序员秘密

http://www.vogella.com/tutorials/ApacheHttpClient/article.html

写给程序员的 Mac OS X 入门指南_Walter-Chen的博客-程序员秘密

本文选自《开发者头条》1 月 11 日最受欢迎文章 Top 3,感谢作者 黎浔 分享。欢迎分享:http://toutiao.io/contribute断断续续重装了不知道不知道多少次Windows,Linux发行版换来换去总是觉得不那么满意,终于在去年三月份买了人生中第一台Mac。暑假之后开始了人生里第一次真正意义上的实习、第一款App Store上架应用、全面转向了JavaScript全栈开发

Cadence PCB SI_weixin_30521161的博客-程序员秘密

Cadence PCB信号完整性 (SI) 和电源完整性技术(PI)提供了可调整、高性价比并且支持前仿真和后仿真的系统互联设计和分析环境。 Cadence PCB信号完整性 (SI) 和电源完整性技术(PI)提供了可调整、高性价比并且支持前仿真和后仿真的系统互联设计和分析环境。Cadence PCB SI和PI产品与Cadence Allegro PCB编辑器、Allegro ...

Transferring Data Between ASP.NET Web Pages_weixin_30276935的博客-程序员秘密

14 July 2012 20:24http://www.mikesdotnetting.com/article/192/transferring-data-between-asp-net-web-pagesThere are a huge number of articles and blog posts on persisting data between user requests...

推荐文章

热门文章

相关标签