我想在我的Ember应用程序中使用Typeahead.js,但我不确定如何利用我已经设置的ember-data RESTAdapter模型来通过我们的内部API查询我的数据库。
我是否会在“本地”项目中进行查询以执行此操作,可能如下(coffeescript)?
$('.typeahead.userGrp').typeahead(
[
name: "Users and Groups"
valueKey: 'namevalue'
minLength: 1
limit: 30
template: hTemplate
local: ->
@get('store').find('userGrp')
engine: Handlebars
]
)
或者我是否必须坚持使用老式的JQuery AJAX调用,如here所述?有关上述代码的内容并不适合我,但我想尽可能使用ember / ember-data的内置内容。
另外,作为对这个问题的一个想法,似乎如果我可以让我的余烬数据适配器工作,我会在RESTAdapter的'buildURL'函数中处理动态URL部分,但如果没有,我会做它在'typeahead.remote.replace'函数中。那会有意义吗?
对此有何想法?
布赖恩
答案 0 :(得分:2)
我可能会使用模型钩子,或者在控制器中获取必要的模型,然后在视图上的didInsertElement期间将它们连接起来(或者在ember呈现Ember transition & rendering complete event之后使用调度程序)。
这是一个丑陋的例子,搞砸了css,但是一般的想法是它在选择之后重新陷入余烬。