Ember.js Don';我不想在Ember.Collection视图中使用任何标记(包括默认的div标记) 标题听起来可能很愚蠢,考虑下面的代码
我的车把锉 我希望它在#主表内呈现4个表,而不是在#主表外呈现它们,因为它将我的Ember.js Don';我不想在Ember.Collection视图中使用任何标记(包括默认的div标记) 标题听起来可能很愚蠢,考虑下面的代码,ember.js,handlebars.js,Ember.js,Handlebars.js,我的车把锉 我希望它在#主表内呈现4个表,而不是在#主表外呈现它们,因为它将我的itemViewClass包含在默认的div标记内。我只能更改标记名属性,但不能将其设置为nil。我想,是否有针对此问题的黑客攻击 对第一个答案的回应 {{each}}的问题是,我使用的EditableField如下: (听起来很清楚,editable field是一个在双击时将div更改为textfield的字段,在focus out时返回到div标记,这是一个使用ember构建的简单小部件) 更新的车把文件 我
itemViewClass
包含在默认的div
标记内。我只能更改标记名
属性,但不能将其设置为nil。我想,是否有针对此问题的黑客攻击
对第一个答案的回应
{{each}}的问题是,我使用的EditableField如下:
(听起来很清楚,editable field是一个在双击时将div更改为textfield的字段,在focus out时返回到div标记,这是一个使用ember构建的简单小部件) 更新的车把文件
我希望在其中一个editableField中的值发生更改时,观察者触发,以便更新数据库中的记录。我们可以使用{{each}}助手来完成这件事吗?另外,arrayContentDidChange仅在数组长度更改时才会触发。好吧,DOM中不能没有“真实存在”的Ember.View,但是如果不想添加充当容器的视图(这里是
Ember.CollectionView
),可以使用{{each}}
帮助程序
将标记名设置为null
无效
模板:
<script type="text/x-handlebars">
<table id="main-table">
<tr>
<td>
<h1>Some Text</h1>
</td>
{{#each App.content}}
<td>
<table><tr><td>{{name}}</td></tr></table>
</td>
{{/each}}
</tr>
</table>
</script>
请参阅。可以在余烬视图中执行此操作
App.MyView = Ember.View.extend({
tagName: ''
});
很好,路易+1。感谢您花时间帮助他人:)@louiscoquio:谢谢您的回复,但请查看更新的问题,对不起,我之前没有添加此详细信息。您可以发布myEditableFieldView的代码吗?也许您可以用一个简单的“您仍然可以访问子视图/父视图”,如在这个JSFIDLE中:。如果它仍然不够,也许您必须使用Ember.ContainerView
。但就我个人而言,我认为你的模板并不干净,CollectionView
应该更多地用作
或直接用作
,例如。@sly7\u 7:@louiscoquio:我想要表的列,这是一个模糊的例子,我正在使用{collection}的代码当然也在我的工作中。但不是空的。我认为这是因为最初提出了这个问题而添加的。标记名:'
在更改路由时会导致错误。我的观点不会因为路线改变而被破坏。(ember 1.2)在ember 1.9.1中-标记名:“”起作用,但将其设置为false则不起作用。我来这里是想说@Nathan所说的^^^关于false
@的建议MichaelJohnston在ember 1.13.5(HTMLBars)中不起作用,而是创建了一个HTML标记
<代码>标记名:'
适合我。
<table id="main-table">
<tr>
<td>
<h1>Some Text</h1>
</td>
{{#collection myCollectionView}}
<td>
<table>
<tr><td>{{view.myEditableField valueBinding="view.content"}}</td></tr>
</table>
</td>
{{/collection}}
</tr>
</table>
myCollectionView = Ember.CollectionView.extend({
contentBinding: "myController.someArray",
//someArray has say 4 elements
itemViewClass: Ember.View.extend({
alertFunc: function(){
alert("content did change");
}.observes('content')
})
})
<script type="text/x-handlebars">
<table id="main-table">
<tr>
<td>
<h1>Some Text</h1>
</td>
{{#each App.content}}
<td>
<table><tr><td>{{name}}</td></tr></table>
</td>
{{/each}}
</tr>
</table>
</script>
App = Ember.Application.create();
App.content = [{name: "foo"}, {name: "bar"}, {name: "baz"}];
App.MyView = Ember.View.extend({
tagName: ''
});