Angularjs 从Angular app事件调用方法

Angularjs 从Angular app事件调用方法,angularjs,Angularjs,假设我有这个方法: function doThings() { //execute method } 我有一些类似的html: <input type="button" value="Click Me" ng-click={{ doThings() }}/> 这会正确调用doThings()方法吗?我应该把方法声明放在哪里?也许在控制器里?我是AngularJS新手,所以请温柔一点:)您有一个命名函数,它没有隐式连接到控制器中的$scope或viewmodel变量,因

假设我有这个方法:

function doThings() {
    //execute method
}
我有一些类似的html:

<input type="button" value="Click Me" ng-click={{ doThings() }}/>


这会正确调用doThings()方法吗?我应该把方法声明放在哪里?也许在控制器里?我是AngularJS新手,所以请温柔一点:)

您有一个命名函数,它没有隐式连接到控制器中的
$scope
或viewmodel变量,因此不会触发

要使其启动,您必须将其绑定到
$scope

$scope.doThings = doThings;
…或将其定义为VM变量,然后在视图中调用该变量

var vm = this;
vm.doThings = doThings;

// HTML
// assuming your controller is bound to vm through its directive
// or through ng-controller="Controller as vm"

<input type="button" value="Click Me" ng-click={{vm.doThings()}}>
var vm=this;
vm.doThings=doThings;
//HTML
//假设您的控制器通过其指令绑定到vm
//或通过ng controller=“控制器作为虚拟机”

这是调用
doThings()
函数时非常基本的angular应用程序设置的标准方式。工作示例:

var-app=angular.module('myApp',[]);
应用程序控制器('myCtrl',函数($scope){
$scope.doThings=function(){
警惕(“我做了一些事情!”);
}
});