2016-03-13 4 views
0

Я перечисляю все предметы в своей коллекции на домашней странице. Это кодкак передать информацию о товаре на следующую страницу?

{{#each applications}} 
     <div class="col-sm-4 col-lg-4 col-md-4"> 
      <div class="thumbnail"> 
       <img src="{{previewImage}}" alt=""> 
        <div class="caption"> 
         <h4 class="pull-right">${{price}}</h4> 
         <h4><a href="#">{{title}}</a> 
            </h4> 
            <p>{{description}}</p> 
        </div> 
      </div> 
     </div> 
    {{/each}} 

У меня есть другой шаблон «itemDetails», который предполагается перечислить информацию элемента этого пользователя мыши. Как сделать элемент кликабельным? и как передать пользователю элемент ItemDetails с информацией о выбранном пользователем элементе?

+1

По крайней мере, проверьте базовую документацию метеоров и примеры приложений на своем веб-сайте. У него есть все, что вы хотите. – Guns

ответ

1

Существует общая настройка, которую вы должны сделать, чтобы достичь этого эффекта.

Lib/router.js

Router.route('/item/:_id', function(){ 
    Session.set("itemId", this.params._id); 
    this.render("navbar", {to:"navbar"}); 
    this.render("itemDetails", {to:"main"}); 
}); 

Так что теперь у вас есть маршрут. Очевидно, что ответ на HTML является:

HTML

<h4><a href="/item/{{_id}}">{{title}}</a> 

Таким образом, у вас есть уникальный маршрут для каждого пункта, синхронизированный с маршрутом маршрутизатора.

И теперь, наконец, когда вы тянете документ из базы данных в вашем heelper для использования в itemDetails шаблона:

var itemId = Session.get("itemId"); 

Затем используйте этот идентификатор, чтобы найти документ из коллекции. И используйте свойства документа для отображения в HTML.

Смежные вопросы