无法在链接功能内调用ng-click功能

时间:2016-12-15 10:43:00

标签: javascript angularjs angularjs-ng-click

我有一个指令..我想在我已经定义了我的指令模板的地方使用在指令的link函数内定义的函数

app.js

angular.module('app',[])
	.controller('appCtrl', function($scope){
		$scope.name = "Vikram Prasad";
	})

	.directive('directive', function(){
		return{
			restrict:'A',
			templateUrl:'button.html',
			link:function(elems, attrs, scope){

				scope.index=0;
				scope.colors = ['red','blue','green','orange','brown'];
				scope.color = scope.colors[scope.index];

				scope.changeColor = function(){
					console.log('clicked');
					if(scope.index>scope.colors.length){
						scope.index = 0;
					}
					scope.color = scope.colors[scope.index];
					scope.index++;
				};
			}
		}
	});

指令模板

<div class="button" ng-class="color" ng-click="changeColor()">Click Me</div>

模板上的ng-click不响应点击。 我在这做错了什么?

1 个答案:

答案 0 :(得分:2)

您在link函数参数中出错,scope首先出现。

link:function(elems, attrs, scope){

应该是

link:function(scope, elems, attrs){