HarmonyOS 鸿蒙Next中拼音搜索卡顿问题

HarmonyOS 鸿蒙Next中拼音搜索卡顿问题

使用taskPool进行本地搜索的代码,pinyin和simplePinyin是提前转换好了的字段,但是实际应用会很卡,

去掉以下两句的比较就完全不卡,

let pinyinSati = member.pinyin?.includes(keyword.toLowerCase())
let simplePinyinSati = member.simplePinyin?.includes(keyword.toLowerCase())

或者我在本地搜索的时候只输入中文搜索就完全不卡

所以有理由怀疑英文的string在.includes的时候性能有问题,


```typescript
function searchMember(allMembers:OrgTreeItem[],keyword:string,callback: (re: OrgTreeItem[]) => void):taskpool.Task {
  let searchTask = new taskpool.Task(filtMembers, allMembers,keyword)
  taskpool.execute(searchTask, taskpool.Priority.HIGH).then((results:object) => {
    callback(results as OrgTreeItem[]);
  }).catch((err:BusinessError) => {
    callback([]);
  })
  return searchTask
}
if (this.searchTask != undefined && this.searchTask.isDone() != true) {
 taskpool.cancel(this.searchTask!)
}
if (key.length > 0) {
  searchMember(this.allUserItems,key,(results:OrgTreeItem[]) => {
    //获取结果刷新数据
  })
}
2 回复

感谢提问,为了更快的解决您的问题,请提供以下信息:

操作系统/版本
复现步骤
错误日志
最小复现demo

我们将在收到信息后尽快处理。

更多关于HarmonyOS 鸿蒙Next中拼音搜索卡顿问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next系统中,如果遇到拼音搜索卡顿的问题,可能是由于以下原因导致的:

  1. 资源占用过高:系统或应用占用过多CPU或内存资源,导致搜索响应变慢。建议通过任务管理器关闭不必要的后台应用,释放系统资源。

  2. 输入法问题:使用的输入法可能存在优化不足或兼容性问题。可以尝试更新输入法到最新版本,或更换其他输入法进行测试。

  3. 系统缓存问题:系统缓存过多可能导致性能下降。建议清理系统缓存或重启设备。

  4. 应用优化不足:搜索功能所在的应用可能存在性能优化不足的问题。建议检查应用是否为最新版本,或联系开发者反馈问题。

  5. 硬件性能限制:如果设备硬件配置较低,可能无法流畅运行某些功能。建议在性能更强的设备上测试,或减少同时运行的应用程序。

如果以上方法无法解决问题,建议联系华为官方技术支持,获取更专业的帮助。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!