【发布时间】:2013-08-25 02:48:09
【问题描述】:
您好,我的问题很简单,但我迷路了一整天,找不到解决方案
我有 JAVA 对象
class Phone {
public int id;
public String name;
public List<Accessory> accessories;
}
和
class Accessory {
public int id;
public String name;
public List<Phone> phones;
}
我应该如何在 js 中映射它?我找不到任何关于创建对象之间关系映射的参考
如果我手动创建这样的东西
name: nokia,
accesories: {
id:1, name: head,
id:2, name: keys
}
我不会得到关系,我只会得到一个大模型
//编辑
function MyCtrl($scope) {
$scope.Phone = {Id: 1, Name:'Nokia'};
$scope.Phone.Accessories = [{Id:1, Name:'foo'}, {Id:2, Name:'bar'}, {Id:3, Name:'barfoo'}];
}
这是您网址中的代码。但这还不够接近
我想要这样的东西
$scope.Phones = [{Id: 1, Name:'Nokia'}, {Id: 2, Name:'Samsung'}, {Id: 3, Name:'iPhone'}];
但我不知道如何为每部手机绑定配件
【问题讨论】:
-
我看到了一对多的关系?带有多个配件的手机。并且附件没有电话列表。但是您希望 Javascript 看起来如何?这和角度有什么关系?
-
@Martijn 我已经更新了代码。我不在乎 js 代码的样子:) 我想制作从 JAVA 到角度模型的映射,所以当我在站点附件或电话上更新时,这将在站点模型中产生反映。例如,在 emberjs 中,当我创建一个键数组(仅键)时,模型是绑定的,我可以像在 JAVA 中一样对它们进行处理。它具有角度的一切,因为我不知道如何在 angularjs 中映射关系
-
好的。好吧,正如 dabee 已经提到的,角度和 Java 之间没有关系或联系。您需要在 Angular 中创建 javascripts 对象并绑定到这些对象。对于我当前的项目,我使用 MVC,这些方法返回例如 json 对象的 e 列表,然后我将其用于绑定。
-
我创建了一个小提琴,希望能回答您的问题:jsfiddle.net/YaRHt/1 这里有一个带有配件列表的电话。
-
你不能在 Java 中创建完整的对象图并将该图转换为 Json 并将其发送回来吗?