代码之家  ›  专栏  ›  技术社区  ›  khush

动态渲染剑道柱

  •  0
  • khush  · 技术社区  · 6 年前

    列根据服务器的响应动态呈现。列名由用户配置,可以是任何内容。

    在渲染网格时,它在控制台中发出以下警告。来自服务器的列名为“total seen”

    网格列字段名“total seen”看起来不像有效的javascript标识符。标识符只能包含字母数字字符(包括“$”或“u”),并且不能以数字开头。请仅使用有效的标识符名称以确保无错误操作。

    有人能帮忙吗?

    0 回复  |  直到 5 年前
        1
  •  1
  •   Petr Pokrovskiy    5 年前

    我最近也遇到过类似的问题,但它与其他语言符号(俄语)有关。

    这里是 StackBlitz code 我让你展示了可用的解决方法(它基于官方的剑道ui网格文档)。看 Product Name 我的例子中的字段。

    主要思想是在呈现网格之前,将列的字段设置为适当的值,即有效的javascript标识符。但是 title 属性仍将包含用户的值。

    方法 _prepareColumnFields 用于通过正则表达式检查将列的字段转换为有效标识符(请注意,为了简单起见,我使用 \W regex,但不包括 $ 符号,也是有效的符号)。

    方法 _getProcessedGridData 用于准备数据集(即替换存储在 _fieldsMapping 对象

    总的来说,我认为这个解决方案有点混乱。我建议您在用户的输入阶段准备正确的列名。

    希望能有帮助!