2017-01-25 6 views
0

getDatas.docData();私は 電子メールを警告することができますが、2番目の呼び出しでgetData.getDocData();それは未定義として表示されています。角度サービスの変数が2つの異なる呼び出しに対して機能しない

var app = angular.module("myapp", []); 

app.controller("tabController", ['$scope','getDatas','$rootScope', function($scope,getDatas,$rootScope) { 

$scope.getDocData=function(){ 
getDatas.docData(); 
getDatas.getDocData(); 
} 
}]); 

app.factory("getDatas",['$http',function($http){ 
var docDatas = {content:null}; 

return{ 
docData:function(){ 
    $http({ 
    method: 'GET', 
    url: '/doctor/getDocData' 
}).then(function(response) { 

    docDatas=response.data; 
    //alert(docDatas.name); 
}) 
    }, 

getDocData:function(){ 
alert(docDatas.name); 

} 
} 

}]); 

何か私は間違っています。ありがとうございました。あなたは多分このコード、コード内で、あなたの工場で$ qを使用する必要があります非同期(async) JSがあるため、

答えて

0

jsが次の行を処理し、このラインを待ってから、プロセスはありません「getDatas.getDocData();は」早くより実行します"getDatas.docData();" ついにJSがdocDatas.nameを見つけると、undefind 幸運を返すいけない...

関連する問題