Javascript 在Factory中使用值数组

Javascript 在Factory中使用值数组,javascript,angularjs,Javascript,Angularjs,目前,我有一个工厂正在使用一个封装在$http.get请求中的json文件。虽然不理想,但这适用于测试。我需要在SharePoint环境中测试相同的解决方案,但不允许使用json文件。最终,这将连接到一个web api调用 如何在工厂中指定json值以允许测试 (function() { var personalViewFactory = function($http) { var factory = {}; factory.getCustomers = function()

目前,我有一个工厂正在使用一个封装在$http.get请求中的json文件。虽然不理想,但这适用于测试。我需要在SharePoint环境中测试相同的解决方案,但不允许使用json文件。最终,这将连接到一个web api调用

如何在工厂中指定json值以允许测试

(function() {
var personalViewFactory = function($http) {

    var factory = {};

    factory.getCustomers = function() {
        return $http.get('relationshiptracker.json');
    };



    return factory;
};

personalViewFactory.$inject = ['$http'];

angular.module('customersApp').factory('customersFactory', 
                                       personalViewFactory);

}());
json示例

[
{
"Segment":"Trading",
"Title":"Narima Ajam ",
"Role":"Oil and Shipping Competency Center Manager ",
"Last Meeting Date":"1/1/2000",
"nextmeetingowner":"",
"CreatedDate":"9/14/2014",
"Modified":"9/14/2014",
"primaryaccountability":"Ajay Buti ",
"otherltEngaged":"Aylin Korkmaz, Carolyn Williams, Karthik Chandrasekar",
"upcomingdate":""
},
{
"Segment":"Upstream",
"Title":"Alison Kenney",
"Role":"IM/IT Manager - The Bridge; (NOLA) - The Bridge",
"Last Meeting Date":"8/5/2014",
"nextmeetingowner":"",
"CreatedDate":"1/2/2000",
"Modified":"2/15/2014",
"primaryaccountability":"Arnold",
"otherltEngaged":"Yero",
"upcomingdate":""
},]

只需将JSON放在工厂中的变量上,并在函数中关闭它


这似乎太简单了,所以我不能理解您的需求,因为我看到您要做的就是创建一个var,将JSON分配给它,然后在getCustomers调用中返回它。根据客户机代码的使用情况,可能会将其包装成一个承诺。我可能把一个简单的问题复杂化了。我正在尝试,但我错过了一些东西。这是我继承的应用程序中的一个怪兽。我该怎么包装呢?
<!DOCTYPE html>
<html>

  <head>
    <script data-require="angular.js@*" data-semver="1.3.0" src="//code.angularjs.org/1.3.0/angular.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>

  <body ng-controller="myCtrl">

    {{myData}}

    <script>
      var app=angular.module("app",[]);

      app.factory("data",function($http){
        var data = [{name:'Bob'},{name:'Amy'}];
        return{
          getData : function(){
            return data;
          }
        }
      });

      app.controller("myCtrl",function($scope,data){

        $scope.myData = data.getData();

      });

      angular.bootstrap(document,["app"]);

    </script>
  </body>

</html>