创建具有自动完成
回答
Ember.js中没有内置组件,但是根据经验,这样的组件可以非常容易地自行编写。在EmberCamp Trek Glowacki表示,他希望不需要任何部件库。
您还可以使用Twitter Bootstrap中的Typeahead或jQuery UI中的AutoComplete,它们可以一起工作。
[Bootstrap Typeahead](http://stackoverflow.com/questions/13637966/emberjs-data-source-twitter-bootstrap-typeahead) – pjlammertyn 2013-04-24 11:07:29
您可以使用Ember.Textfield的事件来做到这一点。 (CoffeeScript的玉)
搜索查看
App.SearchView = Ember.View.extend
templateName: 'search'
searchTerm: null
searchTextField: Ember.TextField.extend
insertNewline: ->
# if the user hits the enter key, you can do something different or call the same function
@get('controller').search(@get('searchTerm'))
keyUp: (e) ->
# validate the item on every keypress
if (e.currentTarget.value.length > 0)
@get('controller').search(@get('searchTerm'))
搜索模板
script(type='text/x-handlebars', data-template-name='search')
{{view view.searchTextField valueBinding="view.searchTerm" placeholder="search"}}
<button {{action "search"}}>search</button>
搜索控制器
App.SearchController = Ember.ObjectController.extend
search: (searchTerm) ->
# do your search
**补充丢失的圆括号
会有一种很好的方法在搜索上添加300毫秒的延迟吗?我正在过滤一个半大的DOM列表,我不希望Ember尝试过滤输入的字符。如果客户正在尝试输入名称。想象过滤之间的最小延迟可能会有所帮助。 – ootoovak 2013-05-26 21:12:16
是的,我可以很快将它添加到代码中。但是,基本上,您可以在JavaScript中设置一个计时器来运行搜索功能,如果有另一个按键进入,您可以取消该计时器,然后设置另一个计时器。这样,快速打字不会每次都会导致搜索,但打字时会打破x。 – WallMobile 2013-05-28 17:08:47
@ootoovak在调用'Ember.run.debounce'或Lodash的'_.debounce'时包装'keyUp'的主体。 – Bluu 2013-10-07 19:34:10
EmberCasts有一个关于how to build an auto complete widget的好视频。
I asked them about the millisecond delay关于过滤,我被告知他们会在下一集中对它进行说明。
这太糟糕了EmberCasts似乎没有添加新视频,您提到的那个视频很快且很容易实现,谢谢。 – 2014-04-08 16:40:26
The github project ember-typeahead在这方面也取得了良好的开局。
- 1. editableTableWidget具有自动完成
- 2. 在jQueryUI自动完成中创建minLength异常自动完成
- 3. 自动完成“创建多边形工具”Maya
- 4. JS - 创建智能自动完成
- 5. 在DataGridView中创建自动完成列
- 6. 如何创建自动完成功能?
- 7. 在android中创建自动完成
- 8. 创建从自定义自动提示自动完成
- 9. 具有自动完成/建议功能的Solr搜索框?
- 10. 在MVC中创建具有自动完成功能的kendo组合框
- 11. Jquery自动完成建议
- 12. NSTextField自动完成/建议
- 13. 自动完成jquery.get json没有完成
- 14. jquery自动完成和自动建议
- 15. 自动建议/自动完成在textarea
- 16. Jquery:创建一个字典来自动完成所有输入
- 17. 创建完成
- 18. VSCode所有自动完成
- 19. 生成歌曲建议(自动完成)
- 20. jqueryui自动完成自定义数据,创建列表
- 21. 如何在Flex中创建自定义自动完成组件?
- 22. 如何在Bootstrap中创建自定义自动完成输入?
- 23. C#创建自定义自动完成文本框
- 24. WPF工具包自动完成问题
- 25. 自动完成工具命令选项
- 26. 如何申请自动完成动态创建的输入框
- 27. jQuery自动完成动态创建的Ajax调用输入
- 28. jQuery自动完成动态创建的输入
- 29. 自动完成不适用于动态创建的内容
- 30. 动态创建的输入上的自动完成
如果有人在寻找解决方案,下面是[embercast](http://www.embercasts.com/episodes/building-an-autocomplete-widget-part-1)。 – Sisir 2014-12-18 16:44:39