HarmonyOS 清除Web缓存

是否可以在不建立Web组件的前提下,对应用中的Web缓存进行清理?WebviewController.removeCache() 方法需要与具体Web组件绑定才能生效。

咨询场景描述:在应用的设置功能入口中,向用户提供清除缓存的功能,但该功能并不依赖于具体的Web页面。

HarmonyOS
2024-08-11 14:10:24
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

可以通过设置全局来处理解决不依赖具体web页面

export class GlobalContext { 
  private constructor() { 
  } 
 
  private static instance: GlobalContext; 
  private _objects = new Map<string, Object>(); 
 
  public static getContext(): GlobalContext { 
    if (!GlobalContext.instance) { 
      GlobalContext.instance = new GlobalContext(); 
    } 
    return GlobalContext.instance; 
  } 
 
  getObject(value: string): Object | undefined { 
    return this._objects.get(value); 
  } 
 
  setObject(key: string, objectClass: Object): void { 
    this._objects.set(key, objectClass); 
  } 
} 
//某一个web组件赋值给全局 
Web({ src: 'https://www.huawei.com', controller: this.webcontroller }) 
  .onControllerAttached(() => { 
    GlobalContext.getContext().setObject('webcontroller', this.webcontroller) 
  }) 
  .height(200) 
  .width('100%') 
 
//清除缓存 
Button('removeCache') 
  .onClick(() => { 
    try { 
      let webcontroller = GlobalContext.getContext().getObject('webcontroller') as web_webview.WebviewController 
      webcontroller.removeCache(true); 
    } catch (error) { 
      let e: BusinessError = error as BusinessError; 
      console.error(`ErrorCode: ${e.code},  Message: ${e.message}`); 
    } 
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
分享
微博
QQ
微信
回复
2024-08-11 21:13:06


相关问题
HarmonyOS web清除缓存问题
893浏览 • 1回复 待解决
HarmonyOS 如何清除Web缓存
614浏览 • 1回复 待解决
HarmonyOS web缓存清除localStorage
655浏览 • 1回复 待解决
HarmonyOS Web如何实现清除缓存
1367浏览 • 1回复 待解决
HarmonyOS 清除缓存功能
1295浏览 • 1回复 待解决
HarmonyOS 清除app缓存
692浏览 • 1回复 待解决
HarmonyOS 如何清除应用缓存
573浏览 • 1回复 待解决
HarmonyOS 关于获取缓存清除缓存
523浏览 • 1回复 待解决
flutter缓存如何清除
945浏览 • 1回复 待解决
HarmonyOS如何清除应用缓存
645浏览 • 0回复 待解决
HarmonyOS 清除APP缓存的问题
571浏览 • 1回复 待解决
HarmonyOS 清除缓存不起作用
604浏览 • 1回复 待解决
HarmonyOS 开发清除缓存功能实现方法
720浏览 • 1回复 待解决
HarmonyOS怎么清除当前应用的缓存
2543浏览 • 1回复 待解决
HarmonyOS 是否有方法可以清除缓存
1287浏览 • 1回复 待解决
HarmonyOS APP有没有清除缓存的接口
1282浏览 • 1回复 待解决
如何通过命令号清除应用缓存
2969浏览 • 1回复 待解决
HarmonyOS 如何清除web的localStorage
548浏览 • 1回复 待解决
HarmonyOS web 清理缓存
589浏览 • 1回复 待解决
HarmonyOS web清理缓存
871浏览 • 1回复 待解决