如何从ui-grid cellTemplate访问控制器功能

Sag*_*gar 3 angularjs angular-ui-grid

我在cellTemplate中有一个链接,当用户点击链接时我需要调用一个在控制器中的函数,我需要将点击的行项目传递给函数.

Yas*_*aka 10

添加到Egil的答案,当您使用controller as功能时,您可以使用以下方法:

控制器:

function myController() {
    var vm = this;
    ......
    vm.gridOptions.appScopeProvider = vm;

    vm.myFunction= function () {
    }
}
Run Code Online (Sandbox Code Playgroud)

然后,当您引用grid.appScope它时,将引用您的控制器,而不是默认$scope变量

grid.appScope.myFunction();
Run Code Online (Sandbox Code Playgroud)


Egi*_*gil 8

你可以通过它gridApi.grid.appScope.

例如 ng-click="grid.appScope.myControllerFn(row.entity)