Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng网格单元模板不';t使用包含的自定义过滤器_Javascript_Angularjs_Ng Grid - Fatal编程技术网

Javascript ng网格单元模板不';t使用包含的自定义过滤器

Javascript ng网格单元模板不';t使用包含的自定义过滤器,javascript,angularjs,ng-grid,Javascript,Angularjs,Ng Grid,在列定义中包含cellTemplate时,如果该cellTemplate包含自定义过滤器,则会导致angular呕吐: 错误:语法错误:标记“CUSTOM_FILTERS”是从[CUSTOM_FILTERS]开始的表达式[row.entity.1 CUSTOM_FILTERS]第14列的意外标记 即使在def列中使用默认cellTemplate,也会导致相同的错误 cellTemplate = "<div class=\"ngCellText\" ng-class=\"col.colInd

在列定义中包含cellTemplate时,如果该cellTemplate包含自定义过滤器,则会导致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>"
cellTemplate=“{{COL_字段自定义_筛选器}”

结果是,ng网格代码假设您已将自定义过滤器硬编码到指定的cellTemplate中:

self.cellTemplate = colDef.cellTemplate || $templateCache.get('cellTemplate.html').replace(CUSTOM_FILTERS, self.cellFilter ? "|" + self.cellFilter : "");
如您所见,如果您在列def中指定了cellTemplate,则它们不会进行替换。因此,如果您正在为列提供自定义cellTemplate,并且希望使用cellFilter,则可以执行以下操作:

cellTemplate = "<div class=\"ngCellText\" ng-class=\"col.colIndex()\"><span ng-cell-text>{{COL_FIELD |number:3}}</span></div>"
cellTemplate=“{{COL_字段|编号:3}”

未来用户注意事项。要使用默认的cellFilters,只需输入名称作为筛选器。例如,{{COL_FIELD | date}}作为日期过滤,或{{COL_FIELD | currency}作为货币过滤。