angularjs:如何调用没有作用域的函数?
这是我的模型angularjs:如何调用没有作用域的函数?,angularjs,Angularjs,这是我的模型 <html ng-app="myApp"> <button id="rainBtn" ng-click="makeItRain()">Make it rain ! </button> <div class="tab-pane active" id="lobbyTab" ng-controller="chatController"></div> makeItRain从未被称为: 如何调用mak
<html ng-app="myApp">
<button id="rainBtn" ng-click="makeItRain()">Make it rain ! </button>
<div class="tab-pane active" id="lobbyTab" ng-controller="chatController"></div>
makeItRain从未被称为:
如何调用makeItRain()函数?制作控制器
var myApp = angular.module('myApp',[]);
myApp.controller("sky", ["$scope", function($scope) {
$scope.makeItRain = function() {
alert("ok");
}
}]);
设置控制器
<button id="rainBtn" ng-controller="sky" ng-click="makeItRain()">
制作控制器
var myApp = angular.module('myApp',[]);
myApp.controller("sky", ["$scope", function($scope) {
$scope.makeItRain = function() {
alert("ok");
}
}]);
设置控制器
<button id="rainBtn" ng-controller="sky" ng-click="makeItRain()">
无法从全局函数中获取作为角度表达式的引用。在不使用控制器的情况下执行此操作的一种可能方法是使用
$rootScope
并在.run()
阶段附加函数,但不建议:
myApp.run(function($rootScope) {
$rootScope.makeItRain = function() {
alert('Raining!');
};
});
另一种方法是放弃通过ng click
指令附加事件处理程序的想法,只需创建一个指令。此解决方案假定您尝试附加的事件处理程序将执行dom操作
myApp.directive('makeItRain', function() {
return function(scope, elem, attr) {
elem.on('click', function() {
makeItRain();
});
};
});
然后将其附加到HTML中:
<button id="rainBtn" make-it-rain>Make it rain ! </button>
下雨吧!
无法从全局函数中获取作为角度表达式的引用。在不使用控制器的情况下执行此操作的一种可能方法是使用$rootScope
并在.run()
阶段附加函数,但不建议:
myApp.run(function($rootScope) {
$rootScope.makeItRain = function() {
alert('Raining!');
};
});
另一种方法是放弃通过ng click
指令附加事件处理程序的想法,只需创建一个指令。此解决方案假定您尝试附加的事件处理程序将执行dom操作
myApp.directive('makeItRain', function() {
return function(scope, elem, attr) {
elem.on('click', function() {
makeItRain();
});
};
});
然后将其附加到HTML中:
<button id="rainBtn" make-it-rain>Make it rain ! </button>
下雨吧!
将ng click更改为onclick时会发生什么?将ng click更改为onclick时会发生什么?