华为鸿蒙开发——Stage/FA模型在ArkTs语言、JS语言 实现页面互转

news2024/11/25 22:48:30

文章目录

  • 一、ArkTs(Stage模型)
  • 二、ArkTs(FA模型)
  • 三、JS(FA模型)

一、ArkTs(Stage模型)

目的:实现两个页面的跳转功能
步骤:
1、打开entry > src > main > ets > pages
2、在默认页面基础上,我们添加一个Button组件,作为按钮响应用户点击,从而实现跳转到另一个页面。

// 添加按钮,以响应用户点击
        Button() {
          Text('Next')
            .fontSize(30)
            .fontWeight(FontWeight.Bold)
        }
        .type(ButtonType.Capsule)
        .margin({
          top: 20
        })
        .backgroundColor('#0D9FFB')
        .width('40%')
        .height('5%')

在这里插入图片描述
3、
(1)创建第二个arkts文件,在相同的文件夹下面创建“Second”文件
在这里插入图片描述
(2)配置路径
在src\main\resources\base\profile\main_pages.json文件里面,添加路劲:

{
  "src": [
    "pages/Index",
    "pages/Second"
  ]
}

上面这种创建arkts文件方法是其中一种,还有一种方法创建则无需手动配置路径:
依然是在src\main\etc\pages下面,右击pages,new下面的page选项,直接输入文件名即可;
在这里插入图片描述
4、
添加文本及按钮。(复制粘贴index.ets)
参照第一个页面,在第二个页面添加Text组件、Button组件等,并设置其样式。

5、实现页面跳转
页面间的导航可以通过页面路由router来实现。页面路由router根据页面url找到目标页面,从而实现跳转。使用页面路由请导入router模块。

(1)index.ets 实现第一页跳转第二页
首先:在最上面位置导入模块

// 导入页面路由模块
import router from '@ohos.router';

其次:

// 跳转按钮绑定onClick事件,点击时跳转到第二页
        .onClick(() => {
          console.info(`Succeeded in clicking the 'Next' button.`)
          // 跳转到第二页
          router.pushUrl({ url: 'pages/Second' }).then(() => {
            console.info('Succeeded in jumping to the second page.')
          }).catch((err) => {
            console.error(`Failed to jump to the second page.Code is ${err.code}, message is ${err.message}`)
          })
        })

(2)second.ets 实现第二页调转第一页

// 返回按钮绑定onClick事件,点击按钮时返回到第一页
        .onClick(() => {
          console.info(`Succeeded in clicking the 'Back' button.`)
          try {
            // 返回第一页
            router.back()
            console.info('Succeeded in returning to the first page.')
          } catch (err) {
            console.error(`Failed to return to the first page.Code is ${err.code}, message is ${err.message}`)
          }
        })

6、效果如下
在这里插入图片描述

二、ArkTs(FA模型)

该模型也可实现页面之间互转,开发起来与Stage模型相比有区别;
步骤:
1、建立一个空工程
注意几点:

  • API选3.0.0,即为API8
  • model选FA模型
    在这里插入图片描述

2、点击“entry > src > main > ets > MainAbility > pages”,打开“index.ets”文件,添加Button按钮

// 添加按钮,以响应用户点击
        Button() {
          Text('Next')
            .fontSize(30)
            .fontWeight(FontWeight.Bold)
        }
        .type(ButtonType.Capsule)
        .margin({
          top: 20
        })
        .backgroundColor('#0D9FFB')
        .width('40%')
        .height('5%')

这里的按钮操作与stage模型中一致。
2、创建第二个页面,second.ets,依然是上两种方法,注意,这里我们建议使用page选项建立文件,这个节省了开发时间。
在这里插入图片描述
3、在second.ets文件里面添加按钮。

在这里插入图片描述
4、实现页面互转
在文件里面,通过按钮绑定onClick事件实现互转。

我们首先在index.ets文件里面添加:
在第一个页面中,跳转按钮绑定onClick事件,点击按钮时跳转到第二页。

// 跳转按钮绑定onClick事件,点击时跳转到第二页
        .onClick(() => {
          router.push({ url: 'pages/second' })
          // 若为API 9工程,则可使用以下接口
          // router.pushUrl({ url: 'pages/second' })

其次:
在第二个页面中,返回按钮绑定onClick事件,点击按钮时返回到第一页。

// 返回按钮绑定onClick事件,点击按钮时返回到第一页
        .onClick(() => {
          router.back()
        })

5、效果
在这里插入图片描述

三、JS(FA模型)

JS应用就是基于JS语言开发,与前面的Arkts语言有所偏差,但总体思路不变;
JS(FA)模型

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

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

相关文章

线性表之-栈

栈的表示: 栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out&#xff…

YN 500U无法上网问题

版本信息 YN LU YN上问题现象 在后台ping,在web上抓包 抓包结构发现是收到回包了的 通过ssh登录到网关上抓包,也是一样,是可以抓到回应包的,但是终端上就是无法显示。 通过wan后ping包是能够看到回显的。 这块模组有问题

C++基础 -43- STL库之set集合

在set插入数据的时候会自动排序 set集合定义格式 int myints[] {50,10,40,30,20};set<int,classcomp> second (myints,myints5);设置排序方式 struct classcomp {bool operator() (const int& lhs, const int& rhs) const{return lhs>rhs;} };举例遍历se…

Web APIs—事件监听、事件类型、事件对象、环境对象、回调函数、综合案例:随机点名案例,轮播图完整版,评论区回车发布,Tab栏切换

版本说明 当前版本号[20231205]。 版本修改说明20231205初版 目录 文章目录 版本说明目录Web APIs - 第2天事件事件监听案例&#xff1a;通过点击按钮&#xff0c;弹出一个对话框 事件类型事件处理程序综合案例&#xff1a;随机点名案例 事件类型鼠标事件键盘事件焦点事件案…

为啥你的文案点击量少?快来看看是不是犯了这些误区

信息爆炸的时代下用户注意力成为稀缺资源&#xff0c;一篇文章如果不能在最开始就抓住读者的心就宛如石沉大海&#xff0c;而许多企业在写软文时总会因为点击量太少而焦虑&#xff0c;今天媒介盒子就来和大家分析分析&#xff0c;为啥你的文章点击量少&#xff0c;帮助企业搞清…

vue项目中添加刷新的按钮

刷新功能 点击导航的刷新按钮&#xff0c;刷新下方主体内容&#xff0c;我这边的项目分为左-上-下结构&#xff0c;上边为tabbar组件&#xff0c;下边为main组件&#xff0c;点击刷新整个流程是刷新按钮&#xff0c;去访问它父组件tabbar的兄弟组件main&#xff0c;使main组件…

渗透测试学习day7

文章目录 靶机&#xff1a;VaccineTask1Task2Task3Task4Task5Task6 7-9解题过程Task7Submit user flagSubmit root flag 靶机&#xff1a;Vaccine Task1 问题&#xff1a;除了SSH和HTTP&#xff0c;这个盒子上还托管了什么服务&#xff1f; ftpnmap扫一下 Task2 问题&…

活动目录是什么?

企业在进行数字化转型时&#xff0c;也会面临日益增长的网络用户和复杂的身份管理需求。为了高效地管理用户身份、控制访问权限以及保护企业的数据安全&#xff0c;许多企业选择使用微软的Active Directory&#xff0c;即微软活动目录&#xff0c;来作为网络身份管理系统。 1、…

概率密度函数(PDF)正态分布

概率密度函数&#xff08;PDF&#xff09;是一个描述连续随机变量取特定值的相对可能性的函数。对于正态分布的情况&#xff0c;其PDF有一个特定的形式&#xff0c;这个形式中包括了一个常数乘以一个指数函数&#xff0c;它假设误差项服从均值为0的正态分布&#xff1a; p ( …

算法通关村第十三关-白银挑战数字与数学高频问题

大家好我是苏麟 , 今天带来数字与数学的高频问题 . 加一 描述 : 给定一个由 整数 组成的 非空 数组所表示的非负整数&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外&#xff0c;这个…

D9741 应用于电视摄像机,笔记本电脑等产品中,3.6V ~ 35V 100mA 三极管驱动

D9741是一块脉宽调制方三用于也收路像机和笔记本电的等设备上的直流转换器。在便携式的仪器设备上。 主要特点&#xff1a;● 高精度基准电路 ● 定时闩锁、短路保护电路 ● 低电压输入时误操作保护电路 ● 输出基准电…

时间选择器

<el-form-item label"时间范围"><!-- <el-date-picker size"small"v-model"createTime"type"daterange"range-separator"至"start-placeholder"请输入起始创建时间"end-placeholder"请输入终止创…

【优选算法系列】【专题一双指针】第四节.15. 三数之和和18. 四数之和

文章目录 前言一、三数之和 1.1 题目描述 1.2 题目解析 1.2.1 算法原理 1.2.2 代码编写 1.2.3 题目总结二、四数之和 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 2.2.2 代码编写 …

美股电动汽车股票分析:蔚来和Rivian这两只都遭受了重创的股票,哪个更值得投资?

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 Rivian(RIVN)和蔚来(NIO)都是目前美股市场上最受关注的电动汽车股票。虽然蔚来在全球最大的电动汽车市场中国扮演着重要角色&#xff0c;但Rivian也击败了很多传统汽车制造商&#xff0c;并成为了第一家在美国推出全电动皮…

Python爬虫完整代码模版——获取网页数据的艺术

Python爬虫完整代码模版——获取网页数据的艺术 在当今数字化世界中&#xff0c;数据是价值的源泉。如何从海量数据中提取所需信息&#xff0c;是每个数据科学家和开发者必须面对的问题。Python爬虫作为一种自动化工具&#xff0c;专门用于从网站上抓取数据。本文将提供一个Py…

Servlet作业1

1.【单选题】 (10分) &#xff08;B &#xff09;是一个用 Java 编写的程序&#xff0c;是一种实现了Servlet接口的类&#xff0c;它是由web容器负责创建并调用&#xff0c;在服务器容器上运行&#xff0c;用于接收和响应用户的请求。 A.Filter B.Servlet C.Request D.Res…

C语言之联合和枚举

C语言之联合和枚举 文章目录 C语言之联合和枚举1. 联合体1.1 联合体的声明1.2 联合体的特点1.3 结构体和联合体对比1.4 联合体大小的计算1.5 联合体小练习 2. 枚举2.1 枚举类型的声明2.2 枚举类型的优点2.3 枚举类型的使用 1. 联合体 1.1 联合体的声明 像结构体⼀样&#xff…

C/C++,组合算法——K人活动选择问题(Activity-Selection-Problem)的源程序

1 活动选择问题 Activity-Selection-Problem with k persons 给定两个大小为 N 的数组S[]和E[]表示商店的开始和结束时间&#xff0c;以及一个整数值 K 表示人数&#xff0c; 任务是找出如果他们基于以下条件最佳地访问每个商店&#xff0c;他们总共可以访问的商店的最大数量…

UEC++ 探索虚幻5笔记(捡金币案例) day12

吃金币案例 创建金币逻辑 之前的MyActor_One.cpp&#xff0c;直接添加几个资源拿着就用 //静态网格UPROPERTY(VisibleAnywhere, BlueprintReadOnly)class UStaticMeshComponent* StaticMesh;//球形碰撞体UPROPERTY(VisibleAnywhere, BlueprintReadWrite)class USphereCompone…

《Pandas1.x实例精解 》书籍分享

Pandas介绍 Pandas&#xff1a;Python数据分析的瑞士军刀 在数据科学、机器学习和人工智能日益繁荣的今天&#xff0c;有效、准确地处理和分析数据已经成为了成功的关键。Python&#xff0c;作为一种强大且易于学习的编程语言&#xff0c;已经在这一领域占据了重要的地位。而…