使用TYPESCRIPT的AngularJS UI网格单元格模板

时间:2017-04-27 09:20:55

标签: angularjs angular-ui-grid

在回答我的问题之前,请考虑我使用带有TYPESCRIPT的AngularJS 1.

是否有人知道如何使用link将控制器功能绑定到此Angular UI Grid中提到的单元格模板?

我有一个非常类似的情况,我定义包含按钮的自定义单元格模板,并尝试将ng-click指令绑定到控制器中的函数?

所以我就是这样的:

组件模板:

<div id="grid1" ui-grid="$ctrl.gridOptions" class="grid" external-scopes="ctrl"></div>

组件控制器(只是一些代码片段):

ctrl = this;

exampleFunction() {
    console.log("Example function called.");
}

actionsCellTemplate = 
            '<btn class="btn btn-default action-button" ng-click="getExternalScopes().exampleFunction()">' +
                '<i class="icon-blue"><b>...</b></i>' +
            '</btn>';

columnDefs: [ { displayName: '', field: 'actions', enableColumnMenu: false, cellTemplate: this.actionsCellTemplate } ]

不要在浏览器控制台中出现任何错误。

1 个答案:

答案 0 :(得分:1)

自RC 19以来,ui-grid不再支持外部作用域。 https://github.com/angular-ui/ui-grid/blob/master/CHANGELOG.md#breaking-changes

  

删除了getExternalScopes()函数。请改用grid.appScope。外部范围属性已删除。使用gridOptions.appScopeProvider将除$ scope。$ parent以外的值分配给appScope