2016-12-05 5 views
0

У меня есть подписчики пользователей и продукт, которые дают около 5000 и 7000 документов соответственно. Я использую данные для поиска типа в пользователях и формах продуктов. Если мы подписываемся на визуализацию формы, форма слишком долго загружается, поэтому мы подписываемся на Meteor.startup, но это также замедляет время запуска.Задержка Meteor подписывается до тех пор, пока не будет доступно больше ресурсов

Как мы можем сделать подписки запускаемыми после завершения первого экрана загрузки без касания кода для первого экрана? Я не хочу подписываться внутри firstScreen.onRender(), потому что может быть несколько первых экранов в зависимости от введенного URL.

Я попытался сделать Meter.defer в Meteor.onStartup, но это не сработало.

В качестве альтернативы, есть ли лучший способ выполнить typeahead с семантикой за пределами загрузки всех данных?

Любые идеи?

ответ

0

Я настоятельно рекомендую вам использовать шаблонные подписки на уровне шаблонов, чтобы убедиться, что ваши данные готовы к вашим шаблонам. Вот ссылка, что это объяснить ->https://www.discovermeteor.com/blog/template-level-subscriptions/

Я надеюсь, что помогает,

+0

, что проблема ... если я подписаться внутри onCreated шаблона, то шаблон занимает слишком много времени для загрузки. поэтому я хочу подписаться на него, прежде чем мы даже доберемся туда, в идеале клиент не занят. – Simon

+0

Я понимаю вашу точку зрения. Но если вы реализуете способ загрузки данных, прежде чем попасть туда, у вас не будет реального выигрыша в производительности. Общее время загрузки будет одинаковым. Я рекомендую новый подход, действительно ли вам нужны все эти 5000, 7000 документов в вашем шаблоне? Как насчет нагрузки частично? Разбиение страницы или загрузка страницы прокрутки. Вы улучшите время загрузки, гарантировано –

+0

спасибо. я понимаю, что вы подразумеваете под «общее время загрузки будет одинаковым». даже если это то же самое, можно ли это воспринимать быстрее, если это делается, когда клиент не занят? и да, нам нужны все документы, потому что это выпадающее меню для поиска, которое предоставляется семантикой. – Simon