2014-02-26 61 views
0

您好,感謝您的幫助。我正在使用ember.js來創建一個基本站點。我有一個每個循環,其中我希望它顯示一個變量,同時鏈接到一個外部網站(例如,我已經存儲爲一個不同的變量的google.com)。Ember.js每個循環都帶有外部/外部鏈接

出於某種原因,當我在每個循環內部進行操作時,出現錯誤「此鏈接處於非活動加載狀態,因爲其至少一個參數目前具有空值/未定義值,或提供的路由名稱無效。「我似乎無法弄清楚如何在點擊時讓它進入外部網站。這裏是我的每個循環和示例json。

{{#each}} 
     {{#link-to 'theme' theme tagName="tr"}} 
      <td class="noWrap">{{#link-to 'theme' title}}{{title}}{{/link-to}}</td> 
      <td>{{#link-to 'theme' this}}<img {{bind-attr src="image"}} \>{{/link-to}}</td> 
      <td class="tdCenter"><a {{bind-attr href="link"}}>{{price}}</a></td> 
      <td>{{description}}</td> 
      <td class="tdCenter">{{columns}}</td> 
     {{/link-to}} 
{{/each}} 

{ 
    id: 1, 
    title: 'Title', 
    price: '$10', 
    description: 'random description', 
    columns: 1, 
    link:'https://google.com', 
    image: 'images/image.jpg' 
} 

,這是我的主題路線

App.ThemeRoute = Ember.Route.extend({ 
    model: function(params) { 
    return App.THEMES.findBy('title', params.title); 
    } 
}); 

讓我知道如果您有任何意見。再次感謝!

大衛乙

+0

第一個鏈接中的主題是什麼?應該是這樣嗎? –

回答

0

如果{{#link-to 'theme' theme tagName="tr"}}被替換爲<tr>,錶行會沒有它的鏈接(除非這是不能接受的,不幸的是,link-to助手的在這一點的目的是,我不清楚)被渲染。

所以結果會是這樣,

http://emberjs.jsbin.com/wuvazica/1#/theme/1

http://emberjs.jsbin.com/wuvazica/1/edit

HBS

<script type="text/x-handlebars" data-template-name="theme"> 
    <table> 
    {{#each}} 
     <tr> 
      <td class="noWrap">{{#link-to 'theme' title}}{{title}}{{/link-to}}</td> 
      <td>{{#link-to 'theme' this}}<img {{bind-attr src="image"}} \>{{/link-to}}</td> 
      <td class="tdCenter"><a {{bind-attr href="link"}}>{{price}}</a></td> 
      <td>{{description}}</td> 
      <td class="tdCenter">{{columns}}</td> 
     </tr> 
{{/each}} 
</table> 
    </script> 

順便提一下,所顯示的錯誤是由於參數theme in {{#link-to 'theme' theme tagName="tr"}} ,如果它被移除了,錯誤將消失,但是由於那個點上的幫助器{{#link-to}},呈現的html將無法正常工作(至少我在我提供的快速示例中注意到了什麼)。

+0

謝謝!我想我需要#link-to,所以它會知道什麼循環,但顯然我沒有。謝謝您的幫助!! – David