我在哪里可以在Ember中定义这个帮助程序来处理站点搜索功能

时间:2014-03-19 02:45:56

标签: ember.js

我刚刚开始使用Ember,如果我有一个如下模板,我很好奇:

<script type="text/x-handlebars">
  <input type='text' id='myVal' /><button {{action "searchInventory"}} class='search_inventory'>search inventory</button>
    {{outlet}}
</script>

我在哪里定义searchInventory助手?似乎可能在一些全局控制器中可能将其转发到搜索结果路由;我有一个InventoryItemController,但是如何将searchInventory操作挂钩呢? Ember如何设置它?

我可以告诉ember在调用动作时使用该控制器,如:

{{action "searchInventory" controller:"InventoryItem" }}

THX

1 个答案:

答案 0 :(得分:0)

我不知道您的应用程序是如何构建的,但假设您拥有上述模板的控制器,您应该在“actions”哈希中定义该控制器上的操作。此外,您应该使用

{{input}} 

把手助手而不是使用输入标签。如果你这样做,你可以在控制器上为这个模板设置一个属性,比如'searchTerm',你可以为它提供一个valueBinding,如下所示:

{{input type="text" valueBinding="controller.searchTerm"}}

这会将用户输入的输入绑定到控制器上searchTerm属性的input元素。希望这会有所帮助。