Emberjs 的简单搜索不起作用

Simple search with Emberjs not working

我正在尝试实现一个简单的搜索功能,它将过滤结果并更新列表。

我尝试了几乎所有的教程,每个教程似乎都在使用它的 jsfiddle,但是当我在我的项目中应用相同的东西时,它根本不起作用。

这是我遇到的第一个问题,我的搜索字段似乎没有与控制器中的计算 属性 绑定。

我也尝试将它作为一个组件,但同样的问题,如果我在搜索字段中键入任何内容,它不会反映任何内容。

让我在这里分享我的代码,

input type="text" value=searchText placeholder="Search..."

  searchResults: ( ->
    console.log "On every key press it should come here.."
    model = @get('model')
    searchText = @get('searchText')
    filterByPath = @get('filterByPath')
    visualPath = @get('visualPath')

    if searchText
      searchText = searchText.toLowerCase()
      model = model.filter(item) ->
      Ember.get(item, filterByPath).toLowerCase().indexOf(searchText)>= 0
      model.getEach(visualPath)

    ).property('searchText')

用组件尝试了几乎相同的事情,但到目前为止没有运气。我没有使用把手,而是使用了 Emblemjs。

如果你想让它被编译,你实际上需要在模板中使用计算 属性来自 JavaScript 代码。所以基本上你需要先在你的模板中使用searchResults

在演示中有 model 而不是 searchResults。我想在您的应用程序中您有类似的设置和相同的错误。

修复:

{{#each searchResults as |item|}}
    <li>{{item}}</li>
{{/each}}

Working demo.