离子 - 虚拟滚动性能问题



所以, 我有一个介于 0 - 2500 之间的项目数组。

我正在尝试使用 virtualscroll 选项(因为这是我为处理大型数组而阅读的内容(来改善显示\滚动大约 1300 个项目时的恶魔性能问题。

所以我做了以下操作,但仍然很痛苦,滚动时可能会使应用程序崩溃。

<ion-list [virtualScroll]="results" approxItemWidth="100%" approxItemHeight="45px" bufferRatio=60>
<button ion-item   *virtualItem="let result" (click)="goToClient(result)">
{{result.FirstName}} {{result.LastName}}
</button>
</ion-list> 

有人建议我做错了什么\如何改进?

尝试安装Cordova wkWebview Engine,它优化了iOS性能问题:

安装说明

确保安装了最新的 Cordova CLI:(可能需要 Sudo(

npm install cordova -g

确保已添加 ios 平台:

ionic cordova platform ls

如果未列出 iOS 平台,请运行以下命令:

ionic cordova platform add ios

如果已安装 iOS 平台,但版本<4.x,请运行以下命令:

ionic cordova platform update ios
ionic cordova plugin save           # creates backup of existing plugins
rm -rf ./plugins            # delete plugins directory
ionic cordova prepare               # re-install plugins compatible with cordova-ios 4.x

安装 WKWebViewPlugin:

ionic cordova plugin add https://github.com/ionic-team/cordova-plugin-wkwebview-engine.git --save

注意:

如果您已经安装了 apache/cordova-plugin-wkwebview-engine,请确保在使用此版本之前将其删除。

ionic cordova plugin rm cordova-plugin-wkwebview-engine

构建平台:

ionic cordova prepare

在 iOS 9 或 10 设备上测试应用:

ionic cordova run ios

验证WKWebView是否已安装在iOS上的一种简单方法是检查window.indexedDB是否存在。例如:

if (window.indexedDB) {
console.log("I'm in WKWebView!");
} else {
console.log("I'm in UIWebView");
}

所需权限

WKWebView 可能无法完全启动(设备就绪事件可能不会触发(,除非 config.xml 中包含以下内容:

配置.xml

<allow-navigation href="http://localhost:8080/*"/>
<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />

在这里找到完整的说明

相关内容

  • 没有找到相关文章

最新更新