无法使用ajax响应数据更新Angular服务中的变量,并且使用进行过滤

海瑟姆佐比

我正在使用与本文相同的代码(与angularjs进行国际化)...但是我需要使用“ $ http get”从ajax请求响应中获取“ tables”变量,但不能!...这是代码,

var xlat = angular.module('xlat', []);

xlat.factory('xlatService', function ($http) {
    var currentLanguage = 'en';
    // var tables = $.extend(true, {}, initialXlatTables);
    var tables = {
        'en': {
            'textKeys.events': 'Events'
        }
    };

    var service = {
        getData: function () {
            var req = {
                method: 'GET',
                url: 'local/en_US.php',
                cache: true,
                headers: {
                    'Content-Type': 'json'
                }
            };

            $http(req).success(function (data) {
                tables = data;
            });
        },
        setCurrentLanguage: function (newCurrentLanguage) {
            currentLanguage = newCurrentLanguage;
        },
        getCurrentLanguage: function () {
            return currentLanguage;
        },
        xlat: function (label, parameters) {
            service.getData();     
            if (parameters === null || $.isEmptyObject(parameters)) {
                return tables[currentLanguage][label];
            } else {
                return $interpolate(tables[currentLanguage][label])(parameters);
            }
        }
    };

    return service;
});

但是当我使用过滤器时,变量“表”不会改变...

var xlat = angular.module('xlat', []);    
xlat.filter('xlat', ['xlatService', function (xlatService) {         
            return function (label, parameters) {
                return xlatService.xlat(label, parameters);
            };
        }]);
Lujcon

试试这个:

var xlat = angular.module('xlat', []);    
xlat.filter('xlat', ['xlatService', function (xlatService) {         
    function myfiler(label, parameters) {
        return xlatService.xlat(label, parameters);
    };
    myfiler.$stateful = true;
    return myfilter;
}]);

有状态过滤器-https: //code.angularjs.org/1.3.9/docs/guide/filter

Secod:您应该以工厂方法而不是xlat函数加载表。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法使用ajax响应数据更新Angular服务中的变量,并且使用进行过滤

来自分类Dev

angular服务中的数据对象变量可通过ajax调用进行更新

来自分类Dev

使用AJAX无法更新View中的数据

来自分类Dev

在Angular 2 Beta中变量未使用获取响应数据更新

来自分类Dev

我无法使用 Angular2 从 JSONP 的响应中获取正文数据,但它可以使用 ajax

来自分类Dev

Angular:无法使用服务访问控制器中的变量

来自分类Dev

尝试使用“不等于” <>为自动过滤器中的条件使用变量,并且无法使其正常工作

来自分类Dev

使用输入表单 Angular 更新服务变量?

来自分类Dev

使用 Ajax 和 Postman 代码进行身份验证,但服务器无法识别变量。

来自分类Dev

使用AJAX过滤数据

来自分类Dev

使用Angular服务共享和更新数据

来自分类Dev

我无法访问使用ngFor循环创建的DOM元素,并且无法从服务中获取数据。角度的

来自分类Dev

使用PHP中的变量进行MySQL更新

来自分类Dev

我想结合使用jQuery,AJAX和Flask,但无法从服务器获取响应以在模板上进行编写

来自分类Dev

使用jquery将数据与ajax响应进行比较

来自分类Dev

使用变量和IN进行过滤

来自分类Dev

使用Ajax更新ERB中的Rails变量

来自分类Dev

使用Ajax更新变量

来自分类Dev

无法使用 jQuery Ajax Bootstrap 模型从数据库中获取更新数据的值 - json 数据

来自分类Dev

无法使用 angular 2+ 中的复选框进行过滤

来自分类Dev

通过 Angular 服务使用 JSON 中的 API - 如何过滤它返回的数据?

来自分类Dev

无法使用来自 ajax 响应文本的 Json 数据

来自分类Dev

如何使用服务中的数据更新指令?

来自分类Dev

使用Angular JS中的Promise更新服务

来自分类Dev

使用Ajax在Rails中更新表数据

来自分类Dev

使用 ajax 调用中的 json 填充后无法访问脚本中的数据变量

来自分类Dev

无法使用 XMLQuery 从 SOAP Web 服务响应中获取值

来自分类Dev

如何使用 Angular 中的 Typescript 等待来自 Web 服务的响应

来自分类Dev

无法在服务器上使用Ajax发布数据

Related 相关文章

  1. 1

    无法使用ajax响应数据更新Angular服务中的变量,并且使用进行过滤

  2. 2

    angular服务中的数据对象变量可通过ajax调用进行更新

  3. 3

    使用AJAX无法更新View中的数据

  4. 4

    在Angular 2 Beta中变量未使用获取响应数据更新

  5. 5

    我无法使用 Angular2 从 JSONP 的响应中获取正文数据,但它可以使用 ajax

  6. 6

    Angular:无法使用服务访问控制器中的变量

  7. 7

    尝试使用“不等于” <>为自动过滤器中的条件使用变量,并且无法使其正常工作

  8. 8

    使用输入表单 Angular 更新服务变量?

  9. 9

    使用 Ajax 和 Postman 代码进行身份验证,但服务器无法识别变量。

  10. 10

    使用AJAX过滤数据

  11. 11

    使用Angular服务共享和更新数据

  12. 12

    我无法访问使用ngFor循环创建的DOM元素,并且无法从服务中获取数据。角度的

  13. 13

    使用PHP中的变量进行MySQL更新

  14. 14

    我想结合使用jQuery,AJAX和Flask,但无法从服务器获取响应以在模板上进行编写

  15. 15

    使用jquery将数据与ajax响应进行比较

  16. 16

    使用变量和IN进行过滤

  17. 17

    使用Ajax更新ERB中的Rails变量

  18. 18

    使用Ajax更新变量

  19. 19

    无法使用 jQuery Ajax Bootstrap 模型从数据库中获取更新数据的值 - json 数据

  20. 20

    无法使用 angular 2+ 中的复选框进行过滤

  21. 21

    通过 Angular 服务使用 JSON 中的 API - 如何过滤它返回的数据?

  22. 22

    无法使用来自 ajax 响应文本的 Json 数据

  23. 23

    如何使用服务中的数据更新指令?

  24. 24

    使用Angular JS中的Promise更新服务

  25. 25

    使用Ajax在Rails中更新表数据

  26. 26

    使用 ajax 调用中的 json 填充后无法访问脚本中的数据变量

  27. 27

    无法使用 XMLQuery 从 SOAP Web 服务响应中获取值

  28. 28

    如何使用 Angular 中的 Typescript 等待来自 Web 服务的响应

  29. 29

    无法在服务器上使用Ajax发布数据

热门标签

归档