Ответ 1
как я могу передать область от контроллера до обслуживания в angularjs?
Вы не можете вводить $scope в сервисы, нет такой вещи, как Singleton $scope.
Я хочу передать связанную ng-модель, которая сидит в моем представлении под названием ng-model = "symbol_wanted" к следующей службе...
Вы можете вызвать службу и передать параметры следующим образом:
.factory('stockData', ['$resource', '$q', function ($resource, $q) {
var factory = {
query: function (value) {
// here you can play with 'value'
var data = $resource('http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22YHOO%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json', {}, {
query: {
method: 'GET',
isArray: false
}
});
var deferred = $q.defer();
deferred.resolve(data);
return deferred.promise;
}
}
return factory;
}]);
Итак, мы называем эту услугу и получаем обещание назад следующим образом:
stockData.query(value) // <-- pass value
.then(function (result) {
$scope.data = result;
}, function (result) {
alert("Error: No data returned");
});
Кстати, я предлагаю вам использовать $http.get
:
Демо Fiddle