当在列定义中包含 cellTemplate 时,如果该 cellTemplate 包含 CUSTOM_FILTERS,则会导致 Angular 呕吐:
错误:语法错误:标记“CUSTOM_FILTERS”是从 [CUSTOM_FILTERS] 开始的表达式 [row.entity.1 CUSTOM_FILTERS] 第 14 列中的意外标记
即使在列 def 中使用默认的 cellTemplate 也会导致相同的错误。
cellTemplate = "<div class=\"ngCellText\" ng-class=\"col.colIndex()\"><span ng-cell-text>{{COL_FIELD CUSTOM_FILTERS}}</span></div>"
事实证明 ng-grid 代码假设您已将自定义过滤器硬编码到指定的 cellTemplate 中:
self.cellTemplate = colDef.cellTemplate || $templateCache.get('cellTemplate.html').replace(CUSTOM_FILTERS, self.cellFilter ? "|" + self.cellFilter : "");
正如您所看到的,如果您在列定义中指定了 cellTemplate,它们不会执行替换。因此,如果您为列提供自定义 cellTemplate 并且想要 cellFilter,您将执行以下操作:
cellTemplate = "<div class=\"ngCellText\" ng-class=\"col.colIndex()\"><span ng-cell-text>{{COL_FIELD |number:3}}</span></div>"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)