引用对象数组以使用 angular-formly 级联 select 选项

Referencing an object array for cascading select options with angular-formly

我正在创建一个表单,该表单的字段选项取决于表单前面的选择,引用 JSON 数组。我已经研究了 Cascade Select 示例,但还没有完全理解控制器在其中的工作方式。有人介意帮我调整 Cascade Select 示例的概念以引用 JSON 数组吗?

Here is a link 到 JS Bin 说明我正在努力完成的事情(一定要 "Run with JS")。我想要的字段的选项是根据数组填充的,并根据以前的 selection 进行过滤。我已经弄清楚如何使用传递给表单元素中的 "options" 参数的简单 for 循环函数为 select 进行一项运动做第一级选项;但我需要帮助进入下一阶段。理想情况下,我希望有更多的深度;即选择一项运动 > 选择一个团队 > 选择一名球员;但我应该能够通过第一个过滤的 select 选项来解决这个问题。

谢谢!

实际上这与angular形式完全无关。您的数据模型未正确建模,您应该使用 外键 的概念。更合适的建模是:

  var sports = [{
      id: 1,
      name: 'Soccer'
    }, {
      id: 2,
      name: 'Basketball'
  }];

  var teams = [{
      id: 1,
      fk: 1,
      name: 'Bayern Munich'
    }, {
      id: 2,
      fk: 1,
      name: 'Real Madrid'
    }, {
      id: 3,
      fk: 2,
      name: 'Cleveland'
  }];

  var player = [{
      id: 1,
      fk: 1,
      name: 'Mario Götze'
    }, {
      id: 1,
      fk: 2,
      name: 'Javier Hernandez'
    }, {
      id: 2,
      fk: 3,
      name: 'LeBron James'
  }];

此处显示了一个工作示例:http://output.jsbin.com/jinaca