2017-09-20 22 views
0

私は奇妙な問題に直面しています。 コントローラ間で文字列を渡すことができません。あるコントローラから別のコントローラへのAngularJSの渡し文字列

私はAngularなしで動作するJQueryを使ってデータ属性を設定するなど、いくつかのことを試していました。 それから "サービス"を通してそれを実装してください。 私にとってはうまくいかない。おそらく私は何かを混ぜた。

誰でも明快で簡単なデモを提供できますか?

ありがとうございます!

+0

ヒント: '$ rootScope' – Sankar

+0

こんにちはSankarのあなたはplsは、いくつかのデモコード –

+0

は、複数の方法で達成することができる提供することができます。あなたが今のところしようとしているコードを投稿してください。 – Rahul

答えて

0

以下のコードを参照してください。あなたは都市名を保存するための共有サービスを作成する必要があります(デモで私が作成したサービスを参照してください)。

そして別のコントローラでは、共有サービスからその都市名を取得する必要があります。

var mainMod = angular.module('MainApp', []); 
 
mainMod.controller('MainCtrl', ['$scope','dataShare', 
 
    function ($scope,dataShare) {   
 
     $scope.city = 'London'; 
 
     $scope.send = function(){ 
 
      dataShare.saveCity($scope.city); 
 
     }; 
 

 
    } 
 
]); 
 
mainMod.controller('MainCtrl2', ['$scope','dataShare', 
 
    function ($scope,dataShare) {   
 
     $scope.getSavedCity = function(){ 
 
      $scope.cityInAnotherController = dataShare.getData(); 
 
     } 
 
     
 
       
 
    } 
 
]); 
 
mainMod.factory('dataShare',function($rootScope){ 
 
    var service = {}; 
 

 
    service.saveCity = function(data){ 
 
     this.data = data; 
 
    }; 
 
    service.getData = function(){ 
 
    return this.data; 
 
    }; 
 
    return service; 
 
});
<!-this is your HTML -> 
 
<html > 
 

 
    <head> 
 
    
 
    <script data-require="[email protected]*" data-semver="2.0.0" src="https://code.angularjs.org/1.4.8/angular.js 
 
"></script> 
 
    <script data-require="[email protected]*" data-semver="2.1.4" src="https://code.jquery.com/jquery-2.1.4.js"></script> 
 
    </head> 
 

 
    <body ng-app='MainApp'> 
 
    <div ng-controller='MainCtrl'> 
 
     <div> 
 
     <h4>Ctrl1</h4> 
 
     <div>{{text}}</div> 
 
     <input type='text' ng-model='city' /> 
 
     <button type='button' ng-click='send();'>Send Data</button> 
 
     {{city}} 
 
     </div> 
 
    </div> 
 
    <div ng-controller='MainCtrl2'> 
 
     <div> 
 
     <h4>Ctrl2</h4> 
 
     <button ng-click="getSavedCity()">Get Saved City </button> 
 
     <div>{{cityInAnotherController}}</div> 
 
     </div> 
 
    </div> 
 
</body> 
 

 
</html>

0

私の親愛なる専門家のためにどのような作品..です

 function selectedItemChange(item) { 
     document.cookie = item.value; 
     $('#dcity').show(); 
    } 

...

URL = '/ API /国/' + document.cookie ;

そして、私はサービス、工場やすべてのパターンを試して、ほぼすべての一日を過ごしてきました。..

関連する問題