2012-10-07 51 views
3

在顯示集合中的項目之前,流星似乎做了一些處理,使客戶端窗口保持不更新。如果你在合理的機器上衝浪到http://madewith.meteor.com,你可以看到這一點。我的2.6GHz 4GB內存筆記本大約需要5秒鐘才能顯示列表中的項目,在此期間沒有任何進度跡象,並且新用戶急於能夠合理地相信該頁面已完成加載。如何才能最好地解決流星收集前的延遲問題?

有沒有辦法增量顯示集合中的項目,例如服務器將線路上的第一項數據推送到客戶端,瀏覽器在接收到新項目時呈現它們?類似於HTTP的chunked transfer

或者是在加載集合時顯示微調圖形的唯一解決方案,類似於https://atmosphere.meteor.com/(「做些聰明的事情」的消息)?

+0

這不是很有意義。這可能意味着太多的東西。也許你最好把它改成[tag:incremental-display]或其他東西? – Tshepang

回答

1

如果您檢查madewith應用程序的xhr,您會看到所有應用程序(此時爲87)應用程序加載在相同的請求中。所以我不認爲'逐步'顯示數據會在這種情況下起到幫助作用。

這個問題只是流星應用需要一段時間來初始化。我不確定未來是否可以改進,但現在,是的,我認爲展示微調是最好的解決方案。

關於如何知道數據何時準備就緒,您可以對集合使用onReady回調,或者查看此PR以獲得即將推出的更好解決方案。

+0

通過增量顯示,我的意思是類似於HTTP的[chunked transfer](http://en.wikipedia.org/wiki/Chunked_transfer_encoding)的方法,客戶端無需等待內容完成傳輸。 –

+0

嗯..但發送的HTML非常簡單。 JS是漫長而複雜的(這與啓動'livedata-connection'所花的時間無疑是緩慢的原因)。但我不確定瀏覽器支持增量JS加載(是嗎?) –