在ng-click inside angular指令中调用父控制器中的方法

时间:2014-05-25 05:38:19

标签: angularjs

我写过这个应用程序

http://plnkr.co/edit/pXUCkT?p=info

这里我试图调用一个方法,该方法在我的angular指令中的ng-click事件中在父控制器中定义

var app = angular.module('ExampleApp2', ['ngRoute']);
app.config(function($routeProvider){
    $routeProvider
        .when('/page1', {templateUrl: 'page1.html', controller: 'page1Controller'})
});
app.directive('sidebar', function() {
    return {
        restrict: 'E',
        scope: {
            items: '=',
            onclick: '&'
        },
        templateUrl: 'menu.html'
    };
});

app.controller('page1Controller', function($scope){
    $scope.currentselection=3;
    $scope.items = [{tname: 'test1', sel: 1}, {tname: 'test2', sel: 2}, {tname: 'test3', sel: 3}];
    $scope.onclick = function(i) {
        alert(i);
    };
});

此方法被成功调用...但是参数未定义。为什么我无法通过该参数?

1 个答案:

答案 0 :(得分:0)

你的掠夺者无法正常工作。我可以建议尝试像这样调用模板中的方法

onclick({i:item.sel})onclick(item.sel)