HarmonyOS 主线程刷新UI

​从异步线程请求数据后,如何回到主线程刷新ui。

获取验证码功能,接口异步请求完成后,无法刷新验证码按钮的UI。

请求接口​。

/**  
 * post请求  
 * @param sid  接口sid  
 * @param postData  接口请求参数  
 * @param callBack  回调  
 * @param isEncrypt Data是否加密 默认false  
 */  
public async  post<T>(sid:string,postData:string,callBack?: ResponseCallBack<T>,isEncrypt: boolean=false) {  
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

请求完成后按钮显示倒计时。

HttpUtil.post<string>(SID_SEND_VERIFICATION_CODE, JSON.stringify(postData), {  
  success(result, response): void {  
    this.senCode()//按钮显示倒计时    
    Logger.info('rsaEncrypt success', ` result.reCode=${result.reCode} response= ${response}`);  
  },
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

这里 this.senCode()//按钮显示倒计时 方法执行后没有按钮UI没有更新。

HarmonyOS
2024-10-28 09:52:59
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

​开发者你好刷新UI需要在主线程中进行,您的this.senCode()方法在异步线程中调用了,所以不起作用。

关于切回UI线程的方法,您可以参考:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/itc-with-emitter-V5

分享
微博
QQ
微信
回复
2024-10-28 15:51:31
相关问题
Worker的宿主线程必须是主线程吗?
1201浏览 • 1回复 待解决
HarmonyOS主线程线程切换问题
1676浏览 • 1回复 待解决
HarmonyOS 其他线程切换到主线程的api
1105浏览 • 1回复 待解决
HarmonyOS native如何获取主线程
696浏览 • 1回复 待解决
如何判断当前线程是否是主线程
3316浏览 • 1回复 待解决
TaskPool子线程主线程如何通信
3308浏览 • 1回复 待解决
HarmonyOS Worker 与主线程通信问题
950浏览 • 1回复 待解决
怎样判断当前线程是否是主线程
1449浏览 • 1回复 待解决
HarmonyOS 主线程处理大数据导致卡死
1242浏览 • 1回复 待解决
HarmonyOS UI刷新
846浏览 • 1回复 待解决
如何判断是否为主线程
2085浏览 • 1回复 待解决
TaskPool如何跟主线程进行通信
1377浏览 • 1回复 待解决