ng-click в угловой области не работает должным образом - PullRequest
0 голосов
/ 05 ноября 2019

Здесь я использую сетку кендо, а сетка вызывается как директива в серверном компоненте.

Создание сетки выполняется в блоке инициализации, где меню actio также добавляется вместе с другими столбцами.

Но когда мы нажимаем на любое конкретное меню действий, соответствующая функция не вызывается.

Ниже приведен ссылочный код

    export class serverController {
    constructor($scope){
    this.$scope = $scope;
    this.init();
    }

    init(){
            /* GRID CONTSTRUCTION */
            var globalGridOptions = angular.copy(self.cvTableOptions.commonNgGridOptions);
            var columnDefsArr = [{
                field: 'name',
                sort: {
                    direction: 'asc',
                    priority: 0
                },
                width: '15%',
                displayName: self.cvLoc('label.name'),
                cellTemplate: '<span class="crop" title="{{row.entity.name}}">{{row.entity.name}}</span>',
                enableHiding: false,
                cellTooltip: true
            }, {
                field: 'startTime[0]',
                displayName: self.cvLoc('label.doNotRunIntervals'),
                width: '15%',
                cellTemplate: '<cv-fancy-tooltip cv-objects="row.entity.startTimeMap" cv-display-width="col.drawnWidth + 20" class="fancy-tooltip-no-break"></cv-fancy-tooltip>',
                cvUserPref: "doNotRunIntervals",
                enableFiltering: false
            }, {
                name: 'action',
                displayName: cvLoc('label.actions'),
                width: '5%',
                enableFiltering: false,
                enableSorting: false,
                enableHiding: false,
                cellTemplate: '<div class="btn-group" uib-dropdown><a href class="uib-dropdown-toggle" uib-dropdown-toggle ng-disabled="disabled"><span class="grid-action-icon"></span></a><ul uib-dropdown-menu class="dropdown-menu" role="menu"><li><a href="" class="ui-grid-action-items" ng-click="this.deleteOperationWindow(row.entity)">' + cvLoc('action.delete') + '</a></li><li><a href="" ng-click="this.addOperationWindow(row.entity)">' + cvLoc('action.modify') + '</a></li></ul></div>'
            }];

            angular.extend(globalGridOptions, {
                data: 'operationWindowData',
                columnDefs: columnDefsArr
            });

            self.$scope.gridBackupWindowOptions = {
                enableColumnResize: true,
                cvIsSearchable: false,
                cvTableName: "operationWindowTable",
                cvOnGridEmpty: {
                    message: self.cvLoc("error.noOperationWindowRule"),
                },
                gridOptions: globalGridOptions,
            };

    }

addOperationWindow(){
console.log('add operation window');
}
deleteOperationWindow(){
console.log('delete operation window');
}


    serverController.$inject = ['$scope'];

    app.controller('serverController', serverController);
...