灰烬 - 动态添加和删除互连的选定元素

时间:2013-12-26 18:48:13

标签: javascript ember.js handlebars.js

嗨,谢谢你抽出时间回答我的问题。

我最近开始使用Ember,我已经熟悉了框架的基本工作流程(路线,控制器,模型,数据模板等)。但是,需要出现更复杂的屏幕和更复杂的javascript逻辑。

我精通javascript / jquery,可以轻松地在几个javascript函数中执行以下操作。但是,我试图避免走那条路,而是以适当的方式做到这一点。

我有一个项目列表(item0,...,第9项)。有一个+(添加新项目按钮)。

我需要以下行为:

当用户点击添加新项目按钮时,我想添加一个新的<li> elemenet,其中包含:

选择元素,文本框和删除按钮(单击时会删除<li>元素及其中的所有内容。

现在,当用户再次点击+按钮时,我想添加一个新的<li>元素,其中包含相同的元素,但这次,在上一个<li>中选择的项目应该没有特色。

当用户点击删除按钮(会有<li>元素的数量)时,我希望能够重新计算可用列表。

另外,对我来说真正重要的是,如何获得对点击按钮(删除项目)的引用?在纯JavaScript中,您发送一个表示被点击元素的对象。我如何在余烬中做到这一点?

由于我不知道从哪里开始,我没有写任何代码,因此我不会要求你提出一个小提琴的例子。我想问你关于我应该阅读哪些ember概念的方向,以熟悉动态添加和删除元素(在我的例子中,元素由select元素,文本框和删除按钮组成)。

非常感谢你!

1 个答案:

答案 0 :(得分:0)

好的,对于那些对答案感兴趣的人。我正在使用Component,然后我在View中动态注入。 +(添加新项目)按钮的操作在负责主页面的控制器中处理。关于删除操作,使用this.remove();将只删除包含单击按钮的整个模板。所有这些管道都由ember完成。