【快应用】初始化页面时,调用configuration.setLocale()不生效

现象描述
快应用app.ux中定义了全局方法changeLocaleConfiguration,用于设置应用显示语言,在首页生命周期onInit中调用changeLocaleConfiguration(),实际已经触发了该方法,但是应用语言并未发生改变。
app.ux中代码:

changeLocaleConfiguration() {
this.localeObject = configuration.getLocale()
if (this.localeObject.language === 'zh') {
configuration.setLocale({
language: 'en',
countryOrRegion: 'US'
})
}
else {
configuration.setLocale({
language: 'zh',
countryOrRegion: 'CN'
})
}
}

首页的代码:

onInit() {
this.$app.$def.changeLocaleConfiguration()
}

 

问题分析
页面初始化时间比较短,但设置语言耗时比较长,导致页面来不及渲染。

 

解决方法

在页面初始化调用设置语言接口时候加上时延,代码如下:

onInit() {
setTimeout(() => {
this.$app.$def.changeLocaleConfiguration()
}, 100);
}

 

建议与总结
建议不要在onInit中调用耗时的操作,如果一定要调用,需要加上时延。

​欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

posted @   华为开发者论坛  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
历史上的今天:
2021-12-16 存量时代用户增长怎么做?唤醒和召回很关键!
2020-12-16 canvas组件绘制的内容导出生成图片保存到相册后打开异常
2020-12-16 华为分析提供行业差异化分析服务,全面赋能开发者精益运营
2020-12-16 如何情景式精准触达用户,提高活跃用户转化?
2020-12-16 移动应用如何针对不同用户精准定制应用内容或风格?
点击右上角即可分享
微信分享提示