У меня есть один проект angularjs, в котором я использую ui-grid.
Я пишу код контроллера.
Проблема в том, что я могу получить доступ к свойству "row" дляв cellTemplate для некоторых полей, но не для всех.
В приведенном ниже примере я не могу получить доступ к свойству строки для поля «rating-процент» в шаблоне ячейки.На самом деле я хочу получить доступ к свойству строки, чтобы сделать процентное значение рейтинга таким же, как для индекса строки.
Не могли бы вы мне помочь?
define([
'angular'
], function (angular) {
function SelectToolController($scope, $timeout, $filter) {
var vm = this,
_gridApi,
_cellTemplate,
_columnDefs,
_starRatingTemplate,
_starRatingColumn,
vm.rating = 20;
//This function gets called only one time from cell template
function getRating(){
vm.rating++;
return vm.rating;
}
_starRatingTemplate =[
'<div class="ui-grid-cell-contents ">',
'<div class="opr-star-rating" >',
'<opr-star-rating rating-percentage="'+getRating()+'"',
'total-count="23"',
'suffix-display="true"',
'rating-display="{{ ', '\'opr.toolrunner.satrRating.successRate\' | oprL10n }}"',
'count-display="{{ ', '\'opr.toolrunner.satrRating.executions\' | oprL10n }}">',
'</opr-star-rating>',
'</div>',
'</div>'
].join('');
_starRatingColumn = {
name: 'starRating',
cellTemplate: _starRatingTemplate,
displayName: 'Rating',
enableFiltering: false,
enableSorting: true,
cellClass: 'star-column',
enableHiding: false,
enableRowSelection: true,
}
_columnDefs.push(_starRatingColumn);
function gridInitialized(gridApi) {
_gridApi = gridApi;
});
})();