我有一個包含大約170個字段的大型XPage。我有相當數量的字段的工具提示。工具提示會查找幫助數據庫並返回相關文本。它們工作正常,但由於執行查找的次數,它們顯着減慢了加載過程。我在加載文本的JS中放入了一個dBar.info語句,並在一個加載文檔並將其放入編輯模式時,它似乎已經觸發了6次工具提示查找。如果它爲每一個工具提示做到這一點,那麼很明顯這就是XPage性能低下的原因。我將DynamicContent設置爲true和false,並得到了類似的結果。我很想嘗試刪除這些工具提示,但這種做法有失於目的。 有沒有辦法限制工具提示只在被調用時觸發查找?就像鏈接到MouseOver事件的東西一樣。在我看來,擴展庫中的工具提示工作正常,如果只有幾個字段需要內聯幫助,但不能很好地擴展。 就像一個測試,我從XPage中刪除了所有的工具提示,而加載速度很慢時,它可能是可以接受的,但工具提示會將它放慢到不可接受的程度。XPage中的工具提示性能
0
A
回答
3
Bill, 這是一個很好的ApplicationScope bean用例。創建一個實現Map並使用內部HashMap作爲緩存的bean。我們稱它爲工具提示。在您的工具提示中,您將標籤定義爲EL,例如工具提示[ '管理器']。 XPages將調用get函數。在這裏你可以檢查內部的HashMap,如果你有這個值,否則你會查找它。所以查找只發生一次。
您可以替代查找需求選擇加載時初始化。使用應該非常快的視圖導航器。因爲它將是一個只加載一次的應用程序範圍。
有意義嗎?
0
您可以使用view.isRenderingPhase()來最小化部分刷新期間的查找。使用工具提示,您還可以更改showDelay屬性,以便在顯示之前工具提示有延遲。這對於視圖來說是一件好事,因此它不會嘗試在鼠標向下移動頁面時加載每個工具提示。 dynamicContent =「true」也可能意味着它沒有加載頁面,但只有在被調用時 - 我沒有檢查過,所以我不確定。
相關問題
- 1. 在XPage中使用BootStrap滑塊無法顯示工具提示
- 2. Jquery vs CSS工具提示的性能?
- 3. Qooxdoo表工具提示性能
- 4. 提高ASP.NET中MSChart工具的性能
- 5. SWT中的工具提示能見度
- 6. 工具提示能見度
- 7. 如何提高大字符串JavaScript工具提示的性能?
- 8. jQuery的工具提示插件沒有提示工具提示
- 9. Microsoft工具提示中的點工具提示問題
- 10. 工具提示不能在ngFor屬性中使用標籤
- 11. 提高MSChart工具的性能?
- 12. Datagrid中的工具提示
- 13. Paper.js中的工具提示
- 14. .net中的工具提示
- 15. Scatter中的工具提示
- 16. 工具提示中的Gridview
- 17. 來自標題屬性的自定義工具提示功能
- 18. 當工具提示顯示時,「實時」更新小工具的工具提示
- 19. JQuery標題屬性工具提示 - 刪除瀏覽器工具提示
- 20. 性能工具
- 21. 對於新的XPage開發人員,您的3大XPage性能提示是什麼?
- 22. WPF工具提示可見性
- 23. D3未定義屬性工具提示
- 24. 使StockCharts中的工具提示與HighCharts中的工具提示行爲相同
- 25. 在工具提示中Highcharts
- 26. jQGrid與jQuery的工具提示工具
- 27. IE與jQuery Tools的工具提示兼容工具提示
- 28. 顯示工具提示中的圖像
- 29. VB.NET中的工具提示顯示
- 30. 顯示DataGridView中的rowHeader工具提示
有道理 - 從未做過這樣的事情,所以它會成爲一種全新的學習體驗。 –
我會給你打個實例。對這個概念的介紹(僅使用SSJS在這裏:http://www.wissel.net/blog/d6plinks/SHWL-89GEGM) – stwissel
我一直在想這個,ApplicationScope變量可能真的很麻煩,因爲它是一個內存管理器。問題是我的顧客可能有8-10或者?不同的數據庫全部使用或多或少相同的設計,因此可能會有幾個非常大的ApplicationScope變量包含基本相同的工具提示提示。也許一個sessionScope變量會更好地工作,並根據需要加載工具提示。這會在限制服務器行程的同時傳播加載超時。看着一個XPage數據庫和幾個數據庫,但不知道該如何工作。 –