繁体   English   中英

在angularjs中将诺言与指令一起使用

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM