Im最初の画面に2つのhtml画面があり、入力を取得してサービスに保存するので、同じ値に別のコントローラがアクセスし、 2番目の画面。ここでは、最初のhtml画面の値をサービスに保存できますが、別のコントローラを使用して値にアクセスしているときに問題が発生しています。それで、別のコントローラからサービスの価値にアクセスする方法と、ここで間違いがあります。コントローラを使用してサービス内の変数にアクセスする方法
サービス:
var app = angular.module('myApp', []);
app.service('variableProperties', function() {
this.sampleVariable= function(data){
var dataStored= 'data';
return {
getString: function() {
return dataStored;
}}}});
コントローラー1:
app.controller('controller1',function($scope, variableProperties){
$scope.submit= function(formData){
variableProperties.sampleVariable($scope.name);
$state.go('screen2.html');
}
})
はコントローラー2:
app.controller('controller2',function($scope, variableProperties){
$scope.getData = variableProperties.getString();
})
、次のように変更し、あなたのサービスでありますどれか)? – lealceldeiro
あなたのサービスは、コードはあまり意味がありません。これは、通常、間違った書式設定の結果であり、間違った場所にかっこを見落としやすくなります。あなたのサービス機能を再フォーマットすれば、簡単にエラーをキャッチすることができます。 – Igor
getStringを取得しているImは定義されていません – Rudhra