HarmonyOS使用Web组件加载页面

1、加载网络页面

在Web组件创建时,指定默认加载的网络页面 。在默认页面加载完成后,如果开发者需要变更此Web组件显示的网络页面,可以通过调用loadUrl()接口加载指定的网页。

默认在Web组件加载完“www.baidu.com”页面后,点击按钮时可通过loadUrl接口将此Web组件显示页面变更为“www.huawei.com”。

2、加载本地页面

将本地页面文件放在应用的rawfile目录下,可以在Web组件创建的时候指定默认加载的本地页面 ,并且加载完成后可通过调用loadUrl()接口变更当前Web组件的页面。

3、加载HTML格式的文本数据

Web组件可以通过loadData()接口实现加载HTML格式的文本数据。当开发者不需要加载整个页面,只需要显示一些页面片段时,可通过此功能来快速加载页面。

import web_webview from '@ohos.web.webview';
@Entry
@Component
struct WebComponentSimple {
  webviewController: web_webview.WebviewController = new web_webview.WebviewController();
  build() {
    Column() {
      Row(){
        Button('华为官方官网')
          .onClick(() => {
            try {
              // 点击按钮时,通过loadUrl,跳转到www.baidu.com
              this.webviewController.loadUrl('www.huawei.com');
            } catch (error) {
              console.error(`ErrorCode: ${error.code},  Message: ${error.message}`);
            }
          })

        Button('加载本地页面')
          .onClick(() => {
            try {
              // 点击按钮时,通过loadUrl,跳转到local1.html
              this.webviewController.loadUrl($rawfile('local.html'));
            } catch (error) {
              console.error(`ErrorCode: ${error.code},  Message: ${error.message}`);
            }
          })

        Button('加载HTML代码片段')
          .onClick(() => {
            try {
              // 点击按钮时,通过loadData,加载HTML格式的文本数据
              this.webviewController.loadData(
                "<html><body bgcolor=\"white\">Source:<pre>加载HTML代码片段</pre></body></html>",
                "text/html",
                "UTF-8"
              );
            } catch (error) {
              console.error(`ErrorCode: ${error.code},  Message: ${error.message}`);
            }
          })
      }
      .justifyContent(FlexAlign.Start)

      Row(){
        // 组件创建时,加载www.baidu.com
        Web({ src: 'www.baidu.com', controller: this.webviewController})
      }
    } .alignItems(HorizontalAlign.Start)
  }
}
4、在module.json5中配置网络访问权限
    "requestPermissions":[
      {
        "name" : "ohos.permission.INTERNET",
        "usedScene": {
          "abilities": [
            "FormAbility"
          ],
          "when":"inuse"
        }
      }
    ]
5、src/main/resources/rawfile目录下创建local.html文件
<!DOCTYPE html>
<html>
<body>
<p style="font-size:20px">本地页面</p>
<p>以下内容建设中……</p>
</body>
</html>
6、HarmonyOS模拟器中,运行并查看结果

注:PreViewer预览器无法查看结果

         

  

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

云原生 k8s 可能使用到的端口整理【不定期更新】

k8s 因为涉及到的组件太多了&#xff0c;所以端口有很多&#xff0c;这里整理了日常所接触的接口&#xff0c;后续有新的再更新。 如果是通过公网 IP 进行安装的时候需要根据实际情况有选择的进行放开&#xff1b;一般只有云厂商会提供公网 IP 访问&#xff0c;自建的话不建议 …

APUE学习之进程间通信(IPC)(下篇)

目录 一、进程间通信&#xff08;IPC&#xff09; 二、信号量&#xff08;Semaphore&#xff09; 1、基本概念 2、同步关系与互斥关系 3、临界区与临界资源 4、信号量的工作原理 5、信号量编程 6、实战演练 三、共享内存&#xff08;Shared Memory&#xff09; 1、…

多线程c++

目录 1.join和detach区别 2.lock_guard和unique_lock 3.原子操作 4.条件变量condition_variable 5.future 和 promise 1.join和detach区别 ①不使用join和detach #include <iostream> #include <thread> #include <windows.h>using namespace std;v…

Linux文本三剑客-grep

1.grep简介&#xff1a; grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具&#xff0c;它能使用正则表达式搜索文本&#xff0c;并把匹配的行打印出来&#xff0c;都是按行处理的。 grep 最主要…

腾讯云云监控实践:使用云审计 CloudAudit SDK 精准管理腾讯云资源

文章目录 一、什么是腾讯云的操作审计 CloudAudit二、CloudAudit 有哪些优势三、CloudAudit 应用场景举例3.1 安全分析3.2 资源变更跟踪3.3 合规性审计 四、使用云审计 SDK 进行云监控4.1 安装环境包 PHP4.2 下载并解压云审计 PHP SDK4.3 创建的腾讯云持久证书&#xff08;如果…

解决:ModuleNotFoundError: No module named ‘selenium’

解决&#xff1a;ModuleNotFoundError: No module named ‘selenium’ 文章目录 解决&#xff1a;ModuleNotFoundError: No module named selenium背景报错问题报错翻译报错位置代码报错原因解决方法方法一&#xff0c;直接安装方法二&#xff0c;手动下载安装方法三&#xff0…

【Tomcat与网络2】一文理解Servlet是怎么工作的

在前面&#xff0c;我们研究了如何用idea来启动一个Servlet程序&#xff0c;今天我们就再来看一下Servlet是如何工作的。 目录 1.Servlet 介绍 2.Servlet 容器工作过程 3.Servlet的扩展 不管是电脑还是手机浏览器&#xff0c;发给服务端的就是一个 HTTP 格式的请求&#xf…

摄像头提示sd卡未格式化怎么回事?怎么解决

作为摄像头用户&#xff0c;往往会遇到或多或少的技术问题。而当摄像头显示"SD卡未格式化"的提示时&#xff0c;这可能令一些用户感到困惑和担忧。在本文中&#xff0c;我们将解释这个提示的原因&#xff0c;并提供一些建议来解决这一问题。我们相信本文会让您更加了…

select的change方法如何传递多个参数

element-ui中select的change方法传递多个参数 element-ui中的select&#xff0c;checkbox等组件的change方法的回调函数只有当前选择的val&#xff0c;如果想再传入自定义参数怎么办&#xff1f; 不能够传入自定义的参数&#xff0c;在进行某些操作时&#xff0c;会比较困难&…

[设计模式Java实现附plantuml源码~结构型]对象的间接访问——代理模式

前言&#xff1a; 为什么之前写过Golang 版的设计模式&#xff0c;还在重新写Java 版&#xff1f; 答&#xff1a;因为对于我而言&#xff0c;当然也希望对正在学习的大伙有帮助。Java作为一门纯面向对象的语言&#xff0c;更适合用于学习设计模式。 为什么类图要附上uml 因为很…

Ubuntu18.04安装Matlab流程笔记

提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 Ubuntu18.04 安装Matlab流程 下载安装包和破解文件安装Matlab注册并运行 下载安装包和破解文件 matlabR2019A源码 提取码:2ztb 下载的Linux matlab2018a文件夹内有三个文件&#xff1a; # 解压Matlab201…

深度学习之循环神经网络 (基础)

循环神经网络简称为RNN&#xff0c;&#xff08;之前讲到的卷积神经网络简称为CNN&#xff09;。 以前我们在使用全链接网络的时候&#xff0c;我们将这种网络叫做Dense 或者是Deep。 Dense链接指的是全链接的。 我们输入的数据是数据样本的不同特征&#xff1a;x1&#xff…

VScode设置行宽提示线

vscode 设置行宽提示线&#xff0c;可以按如下步骤设置&#xff1a; 打开设置 搜索框输入 rulers&#xff0c;选择用户&#xff0c;点击 在 settings.json 中编辑 跳转到一个 json 文件后&#xff0c;将字段 rulers 对应值设置为 80 补充&#xff1a;如果您在您的 json 配…

JUC并发编程-四大函数式接口、Stream 流式计算、ForkJoin并行执行任务

12. 四大函数式接口 新时代的程序员&#xff1a;lambda表达式、链式编程、函数式接口、Stream流式计算 函数式接口&#xff1a;只有一个方法的接口&#xff0c;可以有一些默认的方法 如&#xff1a;Runnable接口函数 1&#xff09;Function 函数型接口 public class Functio…

java 图书管理系统 spring boot项目

java 图书管理系统ssm框架 spring boot项目 功能有管理员模块&#xff1a;图书管理&#xff0c;读者管理&#xff0c;借阅管理&#xff0c;登录&#xff0c;修改密码 读者端&#xff1a;可查看图书信息&#xff0c;借阅记录&#xff0c;登录&#xff0c;修改密码 技术&#…

常用芯片学习——CD4094芯片

CD4094 8位移位寄存器/3态输出缓冲器 使用说明 CD4094是由一个 8 位串行移位寄存器和一个 3 态输出缓冲器组成的 CMOS 集成电路。寄存器带有存储锁存功能&#xff0c;集成电路根据 STROBE 信号确定锁存器是否接收移位寄存器各位数据&#xff0c;数据是否由锁存器传输到 3 态输…

在Windows上安装与配置Apache服务并结合内网穿透工具实现公网远程访问本地内网服务

文章目录 前言1.Apache服务安装配置1.1 进入官网下载安装包1.2 Apache服务配置 2.安装cpolar内网穿透2.1 注册cpolar账号2.2 下载cpolar客户端 3. 获取远程桌面公网地址3.1 登录cpolar web ui管理界面3.2 创建公网地址 4. 固定公网地址 前言 Apache作为全球使用较高的Web服务器…

如何通过Hive/tez与Hadoop的整合快速实现大数据开发

一、Hive的功能 Hive是基于Hadoop的一个外围数据仓库分析组件&#xff0c;可以把Hive理解为一个数据仓库&#xff0c;但这和传统的数据库是有差别的。 传统数据库是面向业务存储&#xff0c;比如 OA、ERP 等系统使用的数据库&#xff0c;而数据仓库是为分析数据而设计的。同时…

移动Web-动画

1、动画-animation 过渡&#xff1a;实现两个状态间的变化过程 动画&#xff1a;实现多个状态间的变化过程&#xff0c;动画过程可控&#xff08;重复播放、最终画面、是否暂停&#xff09; 1.1 实现步骤 1.1.1 定义动画 1.1.2 使用动画 <!DOCTYPE html> <html lang…

备战蓝桥杯---数据结构与STL应用(入门2)

话不多说&#xff0c;直接看题&#xff1a; 前4个操作我们可以用deque解决&#xff0c;第5个我们不用真的去反转&#xff0c;调换一下头尾即可。 下面是AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int n,m,k,k1,ee0; bool cm1(int a,int b){retur…