Jquery Ember.js-向视图动态添加组件
你好,谢谢你抽出时间回答我的问题 我希望能够动态地将Jquery Ember.js-向视图动态添加组件,jquery,ember.js,Jquery,Ember.js,你好,谢谢你抽出时间回答我的问题 我希望能够动态地将元素(作为组件实现)添加到元素(我可以从视图中获取引用)中 我有以下代码: ... <script type="text/x-handlebars" id="components/team-effort"> <li> <button {{action remove}}>remove</button> </li> </script> ... <scri
元素(作为组件实现)添加到元素(我可以从视图中获取引用)中
我有以下代码:
...
<script type="text/x-handlebars" id="components/team-effort">
<li>
<button {{action remove}}>remove</button>
</li>
</script>
...
<script type="text/x-handlebars" data-template-name="projects">.
<button {{action "addNewTeamEffort" target="view"}}>Add New Team</button><br />
<ul id="teameffortul">
{{team-effort}}
</ul>
</script>
App.TeamEffortComponent = Ember.Component.extend({
didInsertElement: function(){
console.log('didInsertElement - TeamEffortComponent');
},
actions: {
remove: function(){
this.remove();
console.log('removed a component');
}
}
});
and finally the view:
App.ProjectsView = Ember.View.extend({
templateName: "projects",
didInsertElement: function(){
jQuery('.datepicker').datepicker();
},
actions: {
addNewTeamEffort: function(){
App.TeamEffortComponent.create().appendTo(jQuery('#teameffortul'));
console.log('added team effort!');
}
}
});
当我有:
addNewTeamEffort: function(){
jQuery('#teameffortul').append('<li>test</li>');
console.log('added team effort!');
}
它按预期工作,并且
元素被附加到
中。你能指出我的错误是什么吗?我通过添加模板名来实现这一点,具体如下:
App.TeamEffortComponent = Ember.Component.extend({
templateName: "components/team-effort",
...
你可以看到一个正在工作的人
希望这有帮助。嘿,斯科特!谢谢你的回答,伙计,它确实有效!然而,仍然在控制台中,我得到了相同的错误,即:断言失败:您不能附加到现有的Ember.View。考虑使用EMBE.CabuleVIEW。即使它添加了新的元素,我也对这个错误感到有点不安。你能发布一个简单的代码,用containerView代替我的方法吗?谢谢@德拉根是的,给我几分钟,我会看看我能做些什么。干杯,斯科特
addNewTeamEffort: function(){
App.TeamEffortComponent.create().appendTo(jQuery('#teameffortul'));
console.log('added team effort!');
}
App.TeamEffortComponent = Ember.Component.extend({
templateName: "components/team-effort",
...