Javascript emberjs append工作,但引发断言失败错误
我是新来的余烬我试图附加一个模板到另一个模板,它似乎工作,但它提出了一个错误,你能解释为什么吗 错误:Javascript emberjs append工作,但引发断言失败错误,javascript,ember.js,Javascript,Ember.js,我是新来的余烬我试图附加一个模板到另一个模板,它似乎工作,但它提出了一个错误,你能解释为什么吗 错误: Assertion failed: You cannot append to an existing Ember.View. Consider using Ember.ContainerView instead 这是app.js中的代码 App.NewStickie = Ember.View.extend({ click: function(evt){ var stickie =
Assertion failed: You cannot append to an existing Ember.View. Consider using Ember.ContainerView instead
这是app.js中的代码
App.NewStickie = Ember.View.extend({
click: function(evt){
var stickie = Ember.View.create({
templateName: 'stickie',
content: 'write your notes here'
});
stickie.appendTo('#stickies');
}
});
App.FooView = Ember.View.extend({
templateName: 'foo'
})
这些是index.html的内容
<script type="text/x-handlebars">
{{#view App.NewStickie}}
<button type="button" class="btn btn-success">
New
</button>
{{/view}}
{{outlet}}
</script>
<script type="text/x-handlebars" id="index">
<div id="stickies">
{{#each item in model}}
<div class="stickie" contenteditable="true">
{{#view App.DeleteStickie}}
<span class="glyphicon glyphicon-trash"></span>
{{/view}}
<div contenteditable="true">
{{item.content}}
</div>
</div>
{{/each}}
</div>
</script>
<script type="text/x-handlebars" data-template-name="stickie">
<div class="stickie">
{{#view App.DeleteStickie}}
<span class="glyphicon glyphicon-trash"></span>
{{/view}}
<div contenteditable="true">
{{view.content}}
</div>
</div>
</script>
{{{查看App.NewStickie}
新的
{{/view}
{{outlet}}
{{{#模型中的每个项目}
{{{#查看App.DeleteStickie}
{{/view}
{{item.content}
{{/每个}}
{{{#查看App.DeleteStickie}
{{/view}
{{view.content}
您可能应该阅读这篇文章,其中解释了ContainerView
是。另外,我认为没有必要创建另一个视图来将模板附加到另一个模板。ember中的每个视图都有一个模板,例如:
foo_view.js
App.NewStickie = Ember.View.extend({
click: function(evt){
var stickie = Ember.View.create({
templateName: 'stickie',
content: 'write your notes here'
});
stickie.appendTo('#stickies');
}
});
App.FooView = Ember.View.extend({
templateName: 'foo'
})
foo模板
<script type="text/x-handlebars" data-template-name="index">
<div id=myFooView>Foo</div>
</script>
<script type="text/x-handlebars" data-template-name="index">
<div id=myFooView>
Foo
{{view App.BarView}}
</div>
</script>
这是不允许的。可以使用{{view}}handlebars辅助对象在其他视图中渲染视图,如下所示:
foo模板
<script type="text/x-handlebars" data-template-name="index">
<div id=myFooView>Foo</div>
</script>
<script type="text/x-handlebars" data-template-name="index">
<div id=myFooView>
Foo
{{view App.BarView}}
</div>
</script>
我在你的代码中看到了很多关于点击事件的视图,ember鼓励你使用,这给了你更多的灵活性,错误/加载处理等等。我认为使用它是个好主意
我希望当我将代码更改为container查看调用NewStickie的按钮时,它会有所帮助。没有错误,但我的视图出现了问题。知道这可能是什么吗?如果有必要,我可以从index.html发布代码。谢谢!index.html可能会有所帮助,请说明您使用view click事件而不是{{action“someAction”}
的原因。余烬鼓励使用行动。谢谢,我已经做了一些修改,现在我会标记你的答案是正确的