2015-04-16 3 views
0

При нажатии на ссылку или при загрузке через консоль Router.go(...) есть заметная пауза между вызовом маршрута и моим приложением.Железный роутер медленно меняет маршруты

Во время этой паузы не выполняются вызовы DDP, и я добавил отладку ко всем моим шаблонам для рендеринга, и повторная рендеринг не происходит. Я не могу для жизни меня выяснить, что вызывает эту паузу, вы можете видеть это в действии на http://riustats.com

+0

Как вы предоставляете RiuTournaments клиенту по каждому маршруту? –

+0

Я думаю, что ваша подписка может загружаться, и это то, чего она ждет. Попробуйте https://github.com/meteorhacks/fast-render или добавьте экран загрузки. – below9k

ответ

1

Подчеркнутый комментарий @ ниже9k, похоже, вы пытаетесь загрузить большой объем данных по желаемому маршруту ,

Уверен, что у него также есть observersChanges.

Хорошим решением может быть использование пакета fast-render.

Пример кода.

Router.route('leaderboard', { 
    waitOn: function(){ 
    return Meteor.subscribe('leaderboard'); //you big collection. 
    }, 
    fastRender: true // important to render the route fast. 
}); 
+0

Я действительно смотрел на быструю визуализацию, но имел некоторые проблемы с этим. То, что сработало для меня, - это отключение Iron Router и использование Flow Router & Flow Layout. Это значительно улучшило производительность, и я просто завершаю и тестирую изменения. – DEfusion