微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 如何使用最新的$resource填充Angular UI Bootstrap Typeahead

根据 thisPawełKozłowski的回答,来自AngularUI-Bootstrap的Typeahead应该可以在最新的Angular版本中使用$resource异步获取弹出项目时使用(我使用的是1.2.X).

Plunk – Paweł’s version – Typeahead with $http

我想我不知道如何正确使用它(因此我在typeaheadHighlight指令的代码中得到一个错误 – typeahead将立即返回的资源作为字符串和轮胎来突出显示它们).

Plunk – Typeahead with $resource

我认为关键代码是:

$scope.cities = function(prefix) {
    var p = dataProviderService.lookup({q: prefix}).$promise;
    return p.then(function(response){
        $log.info('Got it!');
        return response.data;
    });
    return p;
};

我尝试过很多东西 – 返回$promise(来自Plunker的版本),query(),然后().
目前,我在我的应用程序中使用$http来实现此功能,我很满意.不过,只是想知道如何用$resource实现同样的目标.

你可能想看看这个:https://github.com/angular/angular.js/commit/05772e15fbecfdc63d4977e2e8839d8b95d6a92d
ui.bootstrap.typeahead是否与$resource的promise API中的更改兼容?

应该:
$scope.cities = function(prefix) {
    return dataProviderService.lookup({q: prefix}).$promise.then(
      function(response){
        // might want to store them somewhere to process after selection..
        // $scope.cities = response.data;
        return response.data;
    });
};

这是基于上面提到的角度提交,它在Angular 1.2.13上对我有

原文地址:https://www.jb51.cc/angularjs/140824.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐