gpt4 book ai didi

javascript - Ember 从搜索字段更新路由中的 API url

转载 作者:行者123 更新时间:2023-11-28 01:35:56 24 4
gpt4 key购买 nike

我想知道是否可以从搜索字段更新路由中的 API URL?

App.ArtistRoute = Ember.Route.extend({
model: function(ishav) {
return $.getJSON('http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist='+ishav.name+'&api_key=xxxxxxxxxxxxxxxx&format=json').then(function(data){
console.log(data.artist)
return data.artist
})
}
});

我想从搜索字段中获取名称,而不是 ishav.name

如何做到这一点?

最佳答案

你一定能做到。您提供的代码中缺少的部分就是发生这种情况的地方。从 View 中,您将重定向到路线并将该术语作为参数传递。

在 View 中,您可以绑定(bind)您的输入字段

{{input class="search-query" type="search"}}

当情况发生变化时,您将在 Controller 上执行某些操作:

search: function (val) {
this.transitionToRoute(App.ArtistRoute, val);
}.property()

然后在您的路线上您可以简单地使用该名称。

额外

为了避免不必要的网络请求,我只会在debounce内引入转换函数(以确保只调用一次):

search: function (val) {      
Ember.run.debounce(this.searchArtist, val, 500);
}.property(),
searchArtist: function (name) {
this.transitionToRoute(App.ArtistRoute, name);
}

关于javascript - Ember 从搜索字段更新路由中的 API url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21538747/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com