2015-03-06 2 views
0

Мне сложно передать данные контроллеру. Мой сценарий заключается в том, что у меня есть функция, которая получает объект json, и мне нужно передать этот объект контроллеру, который выполняет всю оставшуюся работу. Ниже приведено то, с чем я работаю:AngularJS - Как передать данные контроллеру

Получение данных перед загрузкой DOM и сохранение их в переменной Data.

$.ajax({ 
    url: "/_api/web/lists/getbytitle('Consultant%20Profile')/items?$filter=ID%20eq%20"+curItemId, 
    type: "GET", 
    headers: {"Accept": "application/json;odata=verbose"}, 
    success: function(data){ 
     Data = data.d.results; //global variable that I want to pass. 
     console.log(Data); 

    }, 
    error: function(data){ 
     console.log("something is not right with - ", data) 
    } 
    }); 

Это контроллер, который я хотел бы передать Data в.

var app = angular.module("contactApp",[]); 
app.value('listData', Data); 
app.controller('ContactController',['listData','$scope','$http',function(listData,$scope,$http){ 
     console.log(listData); 
     //Do something here... 
}); 

Я пытаюсь использовать value(), но получаю сообщение об ошибке, если я прохожу в чем-либо, кроме строки. Поэтому, если Data = "Sometext" будет утешать этот текст, но если это объект, он не работает. Не уверен, что я делаю неправильно, но есть ли лучший способ сделать это !?

+1

почему бы вам не использовать сервис HTTP $ от угловой? – RafaelTSCS

ответ

1

Угу, как Рафаэль упомянул попытку, используя $ HTTP сервис от углового

https://docs.angularjs.org/api/ng/service/$http

+0

Я могу получить данные, но я не могу их передать. Угловой не нравится данные $ ajax возвращается !? – habibg

+0

какая ошибка вы получаете? какой тип вар вы пытаетесь пройти? – JSB

+0

Думаю, я понял! Вызов асинхронизирован, поэтому переменная не была определена при выключении контроллера (для возврата данных требуется более длинный вызов, такое же поведение с использованием $ http). Я изучаю угловую фабрику, чтобы получить данные, а затем ввести ее в контроллер. – habibg

Смежные вопросы