Ng-Click ячейки пользовательского интерфейса внутри шаблона фабрики - PullRequest
1 голос
/ 26 мая 2019

Я разрабатываю веб-сайт для своей компании и пытаюсь вызвать функцию, щелкнув значение в ячейке.

Я использую ui-grid и ControllerAs.

Функция создания таблицы находится внутри моего контроллера 'statusController':

function generateStatusCountChart()
{
    var postData = {
        'id'        : vm.id,
        'region'    : vm.region,
        'pageSize'  : PAGE_SIZE,
        'pageNum'   : vm.pageNum
    };

    dashboardsService.getStatus(postData).then(function (results) {
        vm.charts.statusCountChart.loading     = true;
        vm.charts.statusCountChart.gridData    = statusViewGraph.statusCountChart(results);
        vm.charts.statusCountChart.loading     = false;
    }).catch(function () {
        vm.charts.statusCountChart.failure     = true;
    });
}

Это функция внутри сервиса statusViewGraph:

function statusCountChart(results) {

   some code......

    var chartConfig = gridData.generateGridOptions(data,gridData.getStatusCountFields());

    return chartConfig;
}

И это 'getStatusCountFields' внутри фабрики 'gridData':

function getStatusCountFields() {
    var specificColumnDef = [
        {
            name: 'result',
            displayName: 'Results',
            cellClass: 'ui-grid-cell-contents',
            cellToolTip: false,
            minWidth: 50,
            cellTemplate: '<div><a ng-click="grid.appScope.vm.FunctionInStatusController()">{{COL_FIELD}}</a></div>',
            aggregationType: function (items) {
                return 'Total Results: ' + $filter('number')(items.length);
            }
        },
        {
            name: 'count',
            displayName: 'Count',
            cellClass: 'ui-grid-cell-contents',
            cellToolTip: true,
            minWidth: 350,
            cellTemplate: '<div style="overflow: auto">{{COL_FIELD}}</div>'
        },
    ];
    return specificColumnDef;
}

Итак, в основном я хочу вызвать функцию, которая определена в 'statusController', и триггером будет ng-click внутри cellTemplate, как показано выше. У вас есть предложения?

...