1

更新:我更新了 JSBin 以修复索引问题并为每个属性创建正式字段,而不是尝试将属性数组传递到正式模板中。如果需要,这将允许我定义自定义和特定于属性的验证器。我仍然不知道这是否是正确的方法,所以欢迎提供一些指导。

我有一个如下的模型结构,每个对象可以有不同的数字属性:

[
  {
    prop1: boolean,
    prop2: String,
    ...
    properties: [
      {
        key: String,
        value: String,
        description: String
      },
      ...
    ]
  },
  ...
]

将对象数组传递给正式类型模板并正式迭代每个对象的属性数组应该非常简单(对吗?)。我认为棘手的部分是想要验证属性数组中的每个项目 - 使用单独的验证器。

关于我如何做到这一点的任何想法?键是明确定义的,所以理论上我可以创建一些将键映射到validators对象的角度服务,但我不清楚如何正式地讲述它。

我在这里有一个可以工作的 JSbin ,它可以工作,但对我来说感觉很脏。

我想认为有一种方法可以将一个ng-repeat放入包装器模板中,但是查看正式的代码,它似乎不能处理<formly-transclude>包装器中的多个元素——即使它可以处理多个包装器,所以也许有办法做到这一点带有多个包装器。

4

1 回答 1

2

实际上(除了一些可以/应该用css解决的样式问题),我认为你的实现很好。我建议您通过在将模型交给角度形式之前根据模型生成字段配置来完成您正在做的事情。

于 2015-07-17T18:50:23.653 回答