2015-09-18 185 views
0

鐵路路由器找不到我確定的路徑正確定義。路徑名顯示爲有效並存在於流星殼中,但在我的Chrome控制檯中返回爲「未定義」。這裏的模板聲明:pathFor無法找到路由 - 鐵路由器和流星

<template name="vidPreview"> 
<div class="videoPreview"> 
    <h2>{{title}}</h2> 
    <a href="{{pathFor route='singleVideo' _id=this._id }}">Play</a> 
    <p>Created At: {{createdAt}}</p> 
    {{#if isLive}} 
     <p>LIVE</p> 
    {{/if}} 
    <p>Viewers: {{uniqueViewers}}</p> 
    <p>Views: {{views}}</p> 
    <p>Location: {{location}}</p> 
    <ul> 
     {{#each genres}} 
      <li><p>{{this}}</p></li> 
     {{/each}} 
    </ul> 
    <p>Created by: {{creator}}</p> 
</div> 
</template> 

而這裏的路線聲明:

Router.route('/video/:_id',{ 
    name: 'singleVideo', 
    template: 'singleVideo', 
    layoutTemplate: 'singleVideo', 
    data: function(){ 
    var currentVideo = this.params._id; 
    return Videos.findOne({ _id: currentVideo }); 
    }, 
    action: function(){ 
    this.render('singleVideo'); 
    } 
}); 

沒有幫手的vidPreview模板操作。數據上下文是單個Video對象的數據上下文,並且該模板被多次放入父模板中。非常感謝幫助。

+0

你在哪裏定義路由?你確定它在客戶端可用嗎? – val

回答

0

我想在pathFor路線名稱參數是位置,即

{{pathFor 'singleVideo' _id=this._id }}