javascript - 工厂方法 HTTP 不工作

标签 javascript angularjs json

我无法从我的工厂 jsonLanguage 获取此 json 调用。

我的代码:

var App = angular.module('App', []);
var theLanguage = 'english';
App.factory('jsonLanguage', function($http){
    var theLanguage = 'english';
    return {

        get: function(theLanguage){
            var url = theLanguage + '.json';
            $http.get(url);
        }
    }

});
App.controller('mainController', function($scope, $http, $log, jsonLanguage) {

  //$http.get(theLanguage + '.json')

       jsonLanguage.success(function(res){  //here is the problem I tried .then and tried res.data no luck :(
          $scope.language = res;
$log.debug($scope.language);


        });
$log.debug($scope.language);
angular.forEach($scope.letter, function(single) {
        $log.log("hello worldsss");
 $log.log(single);
    });
});

App.controller('intervalController', function($scope, $log) {
    this.$log = $log;
    //var name = $scope.single;
    angular.forEach($scope.letter, function(single) {
        $log.log("hello worldsss");
 $log.log(single);
    });
    //$log.log(name);
  $log.log('Hello World!');

});

App.controller('clickController', function($scope) {

});

我尝试了 jsonLanguage,然后尝试了 res.data,但没有成功。

最佳答案

在这里你错过了几件事:

  1. 返回$http服务 promise get method

    get: function(theLanguage){
        return $http.get(url);
    }
    
  2. 调用工厂get method & 通过将 .then 放入其 promise 成功中获取数据通过该方法调用。

    jsonLanguage.get($scope.language).then(function(res){ 
       $scope.language = res.data;
    });
    

关于javascript - 工厂方法 HTTP 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38794938/

相关文章:

javascript - 链接不适用于 Angular ui-router

json - Golang 到 Json,创建 Google Charts

javascript - 使用javascript将html转换为xml?

angularjs - 在 AngularJS 中限制 PubNub 请求

json - '溢出错误 : Maximum recursion level reached' while exporting to json from pandas

javascript - 如何检测透明区域单击或用户在 Canvas 中的透明区域绘制?

javascript - jquery ui 自动完成功能不适用于 jquery 版本 3.2.1

javascript - CSS div 标签继承表格行的尺寸

javascript - 选择文档模式 8 时,High Chart Legends 旋转在 IE 10,11 上不起作用

javascript - 从angularJs中的日期时间字符串获取日期?