2011-12-25 12 views
1

EmberインラインテンプレートはDIVで囲まれています。私は別のタグでそれらをラップしたいと思います。それ、どうやったら出来るの?sproutcore/emberjsインラインスクリプトテンプレートのタグ名はどのように指定しますか?

次のテンプレート:私はそれが可能だとは思わない

<someOtherTag>Foo</someOtherTag> 
+0

優秀な質問を参照してください!答えに示唆された回避策は、他のすべてのHTMLタグが存在するテンプレートのHTML * * out *に表示されるタグについて、開発者がプレゼンテーションの決定を移動させるため、 )と彼のJavaScriptコードに変換します。 –

答えて

2

:私のようなものを生成したい

<div>Foo</div> 

<script type="text/x-handlebars"> 
Foo 
</script> 

のようなものを生成し、現在のバージョン0.9.3では。あなたがhttps://github.com/emberjs/ember.js/blob/master/packages/ember-views/lib/views/view.js#L707divを見ると、プロパティtagNameが設定されていない場合に使用されます。

独自のEmber.Viewを定義し、tagNameを設定することもできますが、独自のビュークラスを作成せずにこれを実現したいと思います。

UPDATE

私は、script要素にdata-view属性としてカスタムビューを指定することを通じて方法を見つけました。

<head> 
    <script type="text/javascript" > 
     App = Ember.Application.create({}); 
     App.View = Ember.View.extend({ 
      tagName: 'someOtherTag' 
     }); 
    </script> 
</head> 
<body> 
    <script type="text/x-handlebars" data-view="App.View" > 
     Foo 
    </script> 
</body> 

http://jsfiddle.net/9F7kR/2/

+0

ありがとうございます。あなたの回避策が好きです。犯人はEmber.Handlebars.bootstrapにあるようだ - 既定のタグ:-( https://github.com/emberjs/ember.js/blob/master/packages/ember- handlebars/lib/loader.js#L56 – Poklet

+0

スクリプトタグのdata-tag-name属性のサポートを追加するプルリクエストを追加しました。https://github.com/emberjs/ember.js/pull/299 – pangratz

+0

よろしくお願いします!自分のコードをもっと短くします – Poklet

関連する問題