使用EmberJS和JSON模式即时生成表单?

时间:2014-05-05 23:26:45

标签: json ember.js schema

我搜索并发现了这个问题(GUI-based or Web-based JSON editor that works like property explorer),它有几个链接到从JSON生成UI的资源。

我对显示使用JSON Schema(http://json-schema.org/)的emberjs生成动态表单的任何示例或已知项目感兴趣。项目如:

任何想法?

2 个答案:

答案 0 :(得分:2)

是的,您可以根据某些JSON动态生成表单。

您需要将JSON对象映射到路由器(或控制器)中的键数组中:

model: function() {
  var json = {a: 'red', b: 'yellow', c: 'blue'};
  var items = [], key;
  for (key in json) {
    if (json.hasOwnProperty(key)) {
      items.push({name: key, value: json[key]});
    }
  }
  return items;
}

只需在视图中使用each帮助器:

{{#each field in content}}
  {{field.name}}: {{input type="text" value=field.value}}<br>
{{/each}}

我使用上面的代码制作了JSBin

答案 1 :(得分:1)

有Ember插件 - ember-cli-dynamic-forms

此插件由alpacajs提供动力。