2017-08-14 41 views
3

所以, 我有一個項目的0之間的陣列 - 2500離子 - VirtualScroll性能問題

我試圖使用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> 

任何人建議我做錯了\如何改善?

+0

是否有在瀏覽器中運行應用程序時,任何錯誤?或者你的名單沒有顯示? – Duannx

+0

不能正常工作。 –

+0

嘗試實現ui-scroll。它會提高性能。和應用程序永遠不會崩潰。 – Pritish

回答

0

嘗試安裝Cordova wkWebview Engine,它優化了iOS的性能問題:

安裝說明

確保安裝了最新的科爾多瓦CLI:(須藤可能需要)

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 install,請確保在使用此版本之前將其刪除。

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可能不會完全展開(該deviceready事件可能不會觸發),除非若設包含在config.xml中:

配置。XML

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

<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" /> 

在這裏找到Complete Instructions