[英]Using promises with directives in angularjs
这与我之前的问题有关:提前角输入:监视数据集更改
我正在为项目使用Siyfion的typeahead指令 ,因为它的几行代码易于理解(对于像我这样的初学者)。
现在,我有一个django后端服务器,该服务器返回我想用于自动完成的JSON对象。
现在我的控制器看起来像这样:
$scope.getGuests = function (guestValue) {
return $http.jsonp('http://gd.geobytes.com/AutoCompleteCity?callback=JSON_CALLBACK &filter=US&q=' + guestValue)
.then(function (response) {
return limitToFilter(response.data, 15);
});
};
我的标记:
<input type="text" class='sfTypeahead' datasets='getGuests($viewValue)' ngModel='testname' />
现在,这显然不起作用,因为我的小部件只有在datasets
完全准备好后才能加载。
有没有一种方法可以编写指令,使我可以像上面显示的那样使用它们?
检查是否可行:
$scope.getGuests = function (guestValue) {
var promise = $q.defer();
$http.jsonp('http://gd.geobytes.com/AutoCompleteCity?
callback=JSON_CALLBACK &filter=US&q=' + guestValue)
.success(function (response) {
promise.resolve(limitToFilter(response, 15));
});
return promise.promise;
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.