1

personManagerInstance.getString("firstname",'common','en') 現在、影響を与える ui に直接文字列を渡しますが、必要なのは json ファイルからデータを読み取り、文字列として返すことです..

personManagerInstance.getString("firstname",'common','en') メソッド JSON ファイルからデータを読み取り、文字列またはオブジェクトとして返す必要がありますか?

personManagerInstance.getString("lastname",'registration','en') パラメータに基づくこのメソッドは、別の場所から json を読み取り、文字列として返します...

var PersonManager = function ()
{
  return {
    $get: function ($http, person)
    {
       var mainInfo = $http({
                              method: "get",
                              //"js/resources-locale_en_es.json"
                              url: "js/resources-locale_en_es.json"
                          }).success(function (data) {
                               return data.title;
                          });
      return {
        getPersonFirstName: function ()
        {
          return "as";
        },
        getPersonLastName: function ()
        {
          return person.lastName;
        },
        getString: function (labelid, moduleName, language)
        {
          //Here am getting the value id, moduleName, language based on the vaule I need to change the url path  
          //(i.e) js/resources-locale_en_es.json, js/registration/resources-locale_en_es.json
          
          var l = mainInfo.success(function (data) {
                               person.firstName = data.title;
                          })
          return person.firstName;
        }
      };
    }
  };
};

angular.module("mainModule", [])
  .value("person", {
    firstName: "",
    lastName: ""
  })
  .provider("personManager", PersonManager)
  .controller("mainController", function ($scope, person, personManager)
  {
    person.firstName = "John";
    person.lastName = "Doe";
    $scope.personInstance = person;
    $scope.personManagerInstance = personManager;

  });
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js"></script>
<script language="javascript" type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script>

  <script src="script.js"></script>
</head>

<body ng-app="mainModule">
  <div ng-controller="mainController">
    <strong>First name:</strong> {{personManagerInstance.getPersonFirstName()}}<br />
    <strong>Last name:</strong> {{personManagerInstance.getPersonLastName()}}<br />
    <strong>Full name:</strong> {{personManagerInstance.getString("firstname",'common','en')}}  {{personManagerInstance.getString("lastname",'registration','en')}}<br />
    <br />
    <label>Set the first name: <input type="text" ng-model="personInstance.firstName"/></label><br />
    <label>Set the last name: <input type="text" ng-model="personInstance.lastName"/></label>
  </div>
</body>
</html>

4

2 に答える 2

0

これはあなたの質問に対する解決策です

$http({
    method: "get",
    url: "link to your json file"
}).success(function (data) {
     callback(data);
});
于 2015-11-26T07:45:16.063 に答える