У меня есть приложение с угловыми и jquery. У меня есть JQuery в следующем angularjs сценария:Доступ к объекту jquery из угловых функций
//allow co-existence of jquery and angular
var $jq = jQuery.noConflict();
//initialize an angular scoped variable taht will be manipulated and used by jquery object
$scope.myOption1 = true;
//jquery ready function
$jq(function() {
var myGadget = $jq('.gadget-container').gadget({
option1: $scope.myOption1
});
});
//angular function to manipulate the jquery object (which represents an image slider)
$scope.myFunction = function() {
//change myOption1 to false
$scope.myOption1 = false;
//re-initialize myGadget with new myOption1 value
myGadget.reInit(); //reInit is a built-in function for myGadget to reinitialize the gadget when options change
}
Jquery может получить доступ к $ scope.myOpyion1 просто отлично. Но угловое значение вызывает ошибку «myGadget не определена» при запуске угловой функции $ scope.myFunction. Я понимаю, почему - он ищет угловую переменную, а не переменную jquery. Итак, как я могу получить доступ к переменной jQuery myGadget в угловых функциях?
Ну, это было достаточно близко, так как «myGadget не в сфере охвата» - ключевая проблема. Однако использование 'var' не работает, но использование $ scope делает :) Итак, если вы можете изменить' var myGadget' на '$ scope.myGadget', я дам вам ответ. Обязательно используйте '$ scope.myGadget' везде. – lilbiscuit