我正面临下一个问题。我正在尝试使用一些模板创建一个指令,例如下面的示例:
$templateCache.put("menuColumns.html",
"<div id=\"grid-table\">"+
"<table id=\"table-{{gridOptions.gridName}}\" class=\"table table-striped table-hover\" >" +
" <thead>"+
" <tr class=\"header cursor-hand\">"+
" <th ng-show=\"gridOptions.canDragDropRows\" style=\"width: 15px;\"></th>" +
" <th ng-repeat=\"itemColumn in gridOptions.gridColumnDefs \" " +
" ng-class=\"selectColumnStyle('{{itemColumn.field}}')\" >{{itemColumn.displayName}}</th>" +
" <th style=\"width: 50px;\"></th>"+
" </tr>"+
" </thead>"+
"</table></div>"
);
在我的控制器中,我有一个这样的变量:
$scope.gridOptions = {
canDragDropRows: true,
gridName: 'items-list',
gridColumnDefs: [{ field: "Id", width: "25%", displayName: "Id"},
{ field: "Description", width: "25%", displayName: "Name" },
{ field: "Location", width: "25%", displayName: "Installation" },
{ field: "Equipment", width: "25%", displayName: "Equipment"}]
};
正如您在模板内的 ng-class 中看到的那样,我正在尝试调用一个名为 selectColumnStyle 的函数,并且我需要将 {{itemColumn.field}} 的值作为参数传递。
当指令尝试渲染时,我没有得到那些具有 ng-class 的指令。似乎这不是将参数传递给某些函数的最佳方式。
你知道一种方法吗?这是我需要函数内字段的名称。
谢谢