【HarmonyOS】一文教你如何在低代码项目中跳转H5页面
【关键字】
元服务、低代码、H5页面跳转、WebView
【1、写在前面】
今天我们来实现一个在低代码项目中通过按钮跳转到H5页面的功能,本项目是基于API6的JS工程,我们的实现思路是在页面B中通过Java加载WebView控件,在低码页面中为按钮绑定点击事件,事件中实现通过JS调用Java能力,OK,下面一起来实战一下吧。
【2、Java实现WebView】
首先我们在“entry/src/main/java/包名/”这个目录下新建一个PageAbility,这里命名H5Ability:

该类中代码如下:

然后进入H5AbilitySlice,首先编辑页面布局,打开ability_h5.xml文件:

在布局中添加一个返回按钮和一个WebView组件,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:alignment="horizontal_center"
ohos:orientation="vertical"> <Text
ohos:id="$+id:back"
ohos:height="50vp"
ohos:width="match_parent"
ohos:start_margin="10vp"
ohos:end_margin="10vp"
ohos:text="返回"
ohos:text_size="18vp"/> <ohos.agp.components.webengine.WebView
ohos:id="$+id:webview"
ohos:height="match_parent"
ohos:width="match_parent"/>
</DirectionalLayout>

然后回到H5AbilitySlice类中编写逻辑代码,代码也很简单,就是初始化控件,然后为返回按钮绑定页面回退事件,然后为WebView添加load()方法,完整代码如下:
import com.jarchie.h5.ResourceTable;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.components.Text;
import ohos.agp.components.webengine.WebView;
import ohos.app.Context;
import ohos.hiviewdfx.HiLog;
import ohos.hiviewdfx.HiLogLabel; public class H5AbilitySlice extends AbilitySlice {
private static final HiLogLabel TAG = new HiLogLabel(HiLog.DEBUG, 0x0, H5AbilitySlice.class.getName());
private Text backText;
private WebView webView; @Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setUIContent(ResourceTable.Layout_ability_h5);
initBackText();
initWebView();
} // 初始化WebView
private void initWebView() {
webView = (WebView) findComponentById(ResourceTable.Id_webview);
webView.getWebConfig().setJavaScriptPermit(true); // 如果网页需要使用JavaScript,增加此行
final String url = "https://www.baidu.com/"; // EXAMPLE_URL由开发者自定义
webView.load(url);
} // 初始化返回文本
private void initBackText() {
backText = (Text) findComponentById(ResourceTable.Id_back);
backText.setClickedListener(component -> onBackPressed());
} @Override
public void onActive() {
HiLog.info(TAG, "onActive:");
super.onActive();
} @Override
public void onForeground(Intent intent) {
HiLog.info(TAG, "onForeground:");
super.onForeground(intent);
} @Override
protected void onStop() {
HiLog.info(TAG, "onStop:");
super.onStop();
}
}

【3、低码绑定跳转事件】
首先打开低码编辑页面index.visual,在该页面中添加一个文本组件,设置文本内容为“跳转H5”,如下图所示:

然后打开entry/src/main/js/default/pages/index/index.js这个同名的js文件:

然后在代码中添加页面跳转事件:
import featureAbility from '@ohos.ability.featureAbility';
export default {
data: {
title: "跳转H5"
},
onInit() {
},
gotoH5Ability() {
featureAbility.startAbility({
want:
{
bundleName: "com.jarchie.h5",
abilityName: "com.jarchie.h5.H5Ability"
},
});
},
}

最后再回到index.visual文件,找到事件绑定按钮,为其添加事件,如下图所示:

【4、实现效果】
一起来看一下最终的实现效果吧:

【HarmonyOS】一文教你如何在低代码项目中跳转H5页面的更多相关文章
- 如何通过执行SQL为低代码项目提速?
见多了SQL为代码开发提速,那么当低代码遇到SQL会擦出怎样的火花呢?本文将低代码和SQL结合进行介绍,让大家了解如何通过执行SQL为低代码项目提速. 背景 自从计算机诞生的一刻起,如何让计算机能够按 ...
- 什么是aPaas?aPaas与低代码又是如何促进应用程序开发现代化的?
从软件即服务(SaaS)到基础设施即服务(IaaS),云计算的兴起使“一切皆服务”(XaaS)模型得以泛滥,而aPaaS可能是这些模型中最鲜为人知的模型.随着aPaaS市场预计将从2018年的近90亿 ...
- 企业应用开发的大趋势,65%的应用开发将通过低代码完成 ZT
全球知名的咨询公司Gartner于近日发表了最新版的<低代码开发平台魔力象限>,并在报告中指出,到2024年65%的应用开发工作都将通过低代码的方式完成.Gartner长期关注软件开发领域 ...
- 开源低代码平台开发实践二:从 0 构建一个基于 ER 图的低代码后端
前后端分离了! 第一次知道这个事情的时候,内心是困惑的. 前端都出去搞 SPA,SEO 们同意吗? 后来,SSR 来了. 他说:"SEO 们同意了!" 任何人的反对,都没用了,时代 ...
- 阿里低代码引擎 | LowCodeEngine - 如何配置并调用请求
首发于 语雀文档@blueju 前言 发送请求是前端中很重要也很常见的一部分,阿里低代码引擎自然也不会缺少这一块.在阿里低代码引擎中,请求是在数据源中配置,数据源位置如下图: 配置 配置界面如下图:其 ...
- 基于低代码平台(Low Code Platform)开发中小企业信息化项目
前言:中小企业信息化需求强烈,对于开发中小企业信息化项目的软件工作和程序员来说,如何根据中小企业的特点,快速理解其信息化项目的需求并及时交付项目,是一个值得关注和研讨的话题. 最近几年来,随着全球经济 ...
- 基于jquery判断浏览器版本过低代码
基于jquery判断浏览器版本过低代码.这是一款对不支持HTML5跟CSS3代码的浏览器提示用户更换特效代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div sty ...
- 为企业应用开发提速,写给企业IT部门的低代码开发基础知识
简介:应用程序开发长期以来一直是IT部门和业务部门面临的问题. IT部门总是被新的应用程序需求弄得不堪重负.他们不可能完成业务部门想要完成的每一个项目. 同时,业务部门的用户厌倦了等待,并开始完全绕过 ...
- APICloud发布低代码开发平台
云原生的出现,致使传统IT模式正在集中向云架构.云开发转型,其中在企业业务的互联网化.数字化进程中尤为突出,并衍生出“敏捷开发”.“快速迭代”的刚性需求.面对双模IT,如何打造全新的IT团队与模式?并 ...
- 除了降低成本和加速数字化转型,低代码还能给企业带来什么价值 ZT
翻译自:https://dzone.com/articles/measuring-the-roi-of-low-code-1,有删改 低代码 是一种近些年兴起的企业软件快速开发技术和工具.借助低代码使 ...
随机推荐
- Django笔记十四之统计总数、最新纪录和空值判断等功能
本篇笔记将介绍一些 Django 查询中统计总数.最新纪录和空值判断等功能. count in_bulk latest.earliest first.last exists contains.icon ...
- socket与struct实战应用(传输文件)
服务端 需求:制作一个可以接收文件的服务,操作客户端往服务端传输文件 服务端代码 import struct import socket import json import os # 1. 先起动服 ...
- Centos9网卡配置
Centos9 网卡配置文件已修改,如下 [root@bogon ~]# cat /etc/NetworkManager/system-connections/ens18.nmconnection [ ...
- [Linux]常用命令之【history】#查看历史操作#
1 历史记录: history history命令就是历史记录. 它显示了在终端中所执行过的所有命令的历史. history //显示终端执行过的命令 history 10 //显示最近10条终端执行 ...
- 【AIGC未来的发展方向】面向人工智能的第一步,一文告诉你人工智能是什么以及未来的方向分析
人工智能的概念 当人们提到"人工智能(AI)"时,很多人会想到机器人和未来世界的科幻场景,但AI的应用远远不止于此.现在,AI已经广泛应用于各种行业和生活领域,为我们带来了无限可能 ...
- 迁移学习《Cluster-Guided Semi-Supervised Domain Adaptation for Imbalanced Medical Image Classification》
论文信息 论文标题:Cluster-Guided Semi-Supervised Domain Adaptation for Imbalanced Medical Image Classificati ...
- RDIF.vNext全新低代码快速开发框架平台发布
1.平台介绍 RDIF.vNext,全新低代码快速开发集成框架平台,给用户和开发者最佳的.Net框架平台方案,为企业快速构建跨平台.企业级的应用提供强大支持. RDIF.vNext的前身是RDIFra ...
- 扎实打牢数据结构算法根基,从此不怕算法面试系列之004 week01 02-04 使用泛型实现线性查找法
1.算法描述 在数组中逐个查找元素,即遍历. 2.上一篇文的实现结果 在 扎实打牢数据结构算法根基,从此不怕算法面试系列之003 week01 02-03 代码实现线性查找法中,我们实现了如下代码: ...
- Linux 阶段二
1.2 安装JDK JDK具体安装步骤如下: 1). 上传安装包 使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux 由于上述在进行文件上传时,选择的上传目录为根目录 /,上 ...
- Windows防病毒Defender 排除病毒误报
开发的软件安装后,windows上提示病毒,默默被系统删除了. 一开始以为是自己软件的签名问题,后面发现,将被隔离的文件还原,文件的签名是存在的. 这是微软denfender的误报,为啥会报病毒呢? ...