4

列定義に cellTemplate を含める場合、その cellTemplate に CUSTOM_FILTERS が含まれていると、角度が吐き出されます。

エラー: 構文エラー: トークン '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>"
4

1 に答える 1

8

ng-grid コードは、カスタム フィルターを指定した 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>"
于 2013-09-06T17:03:46.707 に答える