Ember:在输入字段上调用操作,焦点与参数



我在探索EmberJS v2.14时正在创建一个简单的待办事项应用程序。 我想构建一个手动内联编辑功能 - 用户将双击待办事项行项目文本跨度,以打开输入字段。 然后,用户将编辑待办事项,该待办事项将双重绑定到后备对象。 然后,当焦点丢失时,应用程序将重新关闭输入字段,返回到新编辑的文本。

以下代码片段位于{{each}}块帮助程序中,它几乎可以工作。

{{#unless todo.isOpenForEdit}}
<span {{action 'openForEditing' todo on='doubleClick'}}>{{todo.text}}</span>
{{else}}
{{input type="text" value=todo.text action='closeForEditing' on='focus-out'}}
{{/unless}}

工件

  • 我可以双击进入编辑模式(即openForEditing()使用 write 参数正确调用。
  • 当输入字段失去焦点时,将正确调用操作处理程序closeForEditing()

件不工作

  • 我不知道如何将待办事项对象模型作为参数传递,所以closeForEditing()处理程序可以执行适当的设置工作isOpenForEdit回到假。

--

问(如何在使用输入帮助程序时将参数传递给操作处理程序?

问:我可以采取不同的方法来实现我的目标吗?

您可以通过以下方式传递操作:

{{input type="text" value=todo.text focusOut=(action 'closeForEditing' todo)}}

您可以通过使用操作助手创建闭包操作来讨好todo

{{input type="text" value=todo.text action=(action 'closeForEditing' todo) on='focus-out'}}

相关内容

  • 没有找到相关文章

最新更新