HarmonyOS 鸿蒙Next web的加载异常
HarmonyOS 鸿蒙Next web的加载异常
现在需要提供web加载异常的组件,当web加载异常时展示这个组件,目前使用了这几个,但是效果不理想,会出现闪动,想问下有没有解决方案?
.onErroreReceive(() => {
// 网页加载遇到错误时触发
this.isErr = true
})
.onHttpErrorReceive(() => {
// 响应码>=400
this.isErr = true
})
.onSslErrorEventReceive(() => {
this.isErr = true
})
.onSslErrorEvent(() => {
this.isErr = true
})
.onFirstMeaningfulPaint(() => {
// 这里表示页面加载成功,展示web
this.isErr = false
})
更多关于HarmonyOS 鸿蒙Next web的加载异常的实战教程也可以访问 https://www.itying.com/category-93-b0.html
当web加载异常时可以通过您列出的这些回调进行处理,您可以尝试一下以下demo(多点击几下Button(‘loadUrl’) 响应码403时触发)
// xxx.ets
import { webview } from '@kit.ArkWeb';
import { BusinessError } from '@kit.BasicServicesKit';
@Entry
@Component
struct WebComponent {
controller: webview.WebviewController = new webview.WebviewController();
@State webType: Visibility = Visibility.Visible;
@State textType: Visibility = Visibility.None;
build() {
Column() {
Button('loadUrl')
.onClick(() => {
try {
// 需要加载的URL是string类型。
this.controller.loadUrl('https://beian.miit.gov.cn/#/home');
} catch (error) {
console.error(`ErrorCode: ${(error as BusinessError).code}, Message: ${(error as BusinessError).message}`);
}
})
Text('web加载失败后的组件').visibility(this.textType)
Text('web加载失败后的组件').visibility(this.textType)
Text('web加载失败后的组件').visibility(this.textType)
Web({ src: 'www.baidu.com', controller: this.controller })
.onHttpErrorReceive((evevt) =>{
console.log(evevt.response.getResponseCode().toString())
if(evevt.response.getResponseCode() == 403){
this.webType = Visibility.None;
this.textType = Visibility.Visible;
}
}).visibility(this.webType)
}
}
}
更多关于HarmonyOS 鸿蒙Next web的加载异常的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
使用stack包一个web+一个骨架图或者loading,web加载成功后,在显示web组件
针对HarmonyOS鸿蒙Next web的加载异常问题,可能的原因及解决方法如下:
-
资源路径错误:检查网页资源的路径是否正确,确保所有引用的文件(如HTML、CSS、JavaScript等)都能被正确找到和加载。
-
网络问题:确认设备是否已连接到互联网或正确的局域网,并且网络连接稳定。可以尝试刷新页面或使用其他网络进行测试。
-
权限设置:检查应用是否有足够的权限来访问和加载网络资源。在鸿蒙系统中,某些权限可能需要用户手动授予。
-
浏览器兼容性问题:鸿蒙Next web可能依赖于特定的浏览器特性或API。确保使用的浏览器版本与鸿蒙Next web兼容。
-
系统更新:鸿蒙系统可能发布了新的更新,这些更新可能修复了与Next web相关的加载问题。检查系统更新,并安装最新的补丁或版本。
-
代码错误:如果网页是由开发者编写的,可能存在代码错误导致加载异常。检查控制台日志中的错误信息,定位并修复问题。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html