中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
web组件设置overScrollMode只有弹性动画弹回界面,没有下拉刷新功能,嵌套在refresh里下拉也不支持刷新
微信扫码分享
import web_webview from ‘@ohos.web.webview’; import { PullToRefresh } from ‘@ohos/pulltorefresh’ @Entry @Component struct Index { controller: web_webview.WebviewController = new web_webview.WebviewController(); @State dataArray: Array<string> = [] private scroller: Scroller = new Scroller(); @Builder getContentView() { Column() { Web({ src: ‘http://www.baidu.com’, controller: this.controller }) } .width(‘100%’) .height(‘100%’) } build() { Scroll(this.scroller) { PullToRefresh({ // 必传项,列表组件所绑定的数据,不是列表传个空数据 data: $dataArray, // 必传项,需绑定传入主体布局 scroller: this.scroller, // 必传项,自定义主体布局 customList: () => { // 一个用@Builder修饰过的UI方法,web组件定义在此@Builder this.getContentView(); }, // 可选项,下拉刷新回调 onRefresh: () => { return new Promise<string>((resolve, reject) => { setTimeout(() => { resolve(’’) // this.controller.loadUrl(‘https://www.baidu.com’) }, 1000); }); }, }) .width(‘100%’) .height(‘100%’) } .width(‘100%’) .height(‘100%’) } }