2

プロジェクトに ember を実装しようとしていますが、基本的なハンドルバー機能をサポートする方法が見つかりません。

必要なのは、最初の 4 つの < li> 項目の後に < br> タグを付けたリストです。ハンドルバーのサイトはそのような機能を提案しています

Ember.Handlebars.registerHelper('list', function(context, options) {
  var ret = "<ul>";
  for(var i=0, j=context.length; i<j; i++) {
    ret = ret + "<li>" + options.fn(context[i]) + "</li>";
    if(i==3){
        ret += '<br id="ok">' 
    }
  }
 return ret + "</ul>";
});

オブジェクト:

 var Test = [
    { url: "http://www.yehudakatz.com", title: "Katz Got Your Tongue" },
    { url: "http://www.sproutcore.com/block2", title: "SproutCore Blog" },
    { url: "http://www.sproutcore.com/block", title: "ssss Blog" },
    { url: "http://www.Blog.com/block", title: "BlogBlog" },
  ];

残り火コード:

App.TestRoute = Ember.Route.extend({
  model: function() {
    return Test;
  }
});

テンプレート:

<script type="text/x-handlebars" id="Test">
    <div>
        <span>test</span>
    </div>
    {{#each model}}
         <a href="{{url}}">{{title}}</a>
    {{/each}} 
  </script>

しかし、結果として、オブジェクトは文字列として解析され、5 回 (「モデル」単語では 5 文字) の空の反復 (< br> を使用) が与えられます。

ただし、#each を使用すると、オブジェクトは解析されますが、リンクは次のようになります。

 < a href="&lt;script id='metamorph-7-start' type='text/x-placeholder'&gt;&lt;/script&gt;http://www.yehudakatz.com&lt;script id='metamorph-7-end' type='text/x-placeholder'&gt;&lt;/script&gt;"><script id="metamorph-8-start" type="text/x-placeholder"></script>Katz Got Your Tongue<script id="metamorph-8-end" type="text/x-placeholder"></script>< /a>

事件の解決方法を教えてください。

4

2 に答える 2