我目前正在尝试创建某种动态模板,它从两个独立的服务中获取数据和元信息。最后的结果应该是一个显示带有正确标签的数据的表。我的计划是创建具有不同基本设计的HTML-templates,比如有3、4或5列的表。然后,匹配控制器应该从服务中获取元数据,该服务应该返回一个带有属性的id的数组及其应该显示在表中的name。到目前为止还不错,但现在出现了一个棘手的部分:
第二个服务获取模板和元数据的id的匹配数据,以及实际数据匹配的id,以便您能够正确地匹配它们。
以下是plunkr:链接上的代码
主要问题是以下代码:
<tr ng-repeat="person in persons">
<td>{{person.name}}</td>
<td>{{person.age}}</td>
<td>{{person.postal}}</td>
</tr> 在<td>-tags之间,数据不是动态的,而是静态的。我不想显式地说明我的属性是如何被调用的,而是使用从元服务获取的数据来知道我的属性是如何被调用的。因此,最终,模板应该获得属性的名称以及匹配的数据。你们有什么好办法帮我解决这个问题吗?
编辑
让事情变得更清楚一点:
目前,<td>标记之间的数据是静态的,因为术语{{person.name}}处于硬编码状态。让我们假设数据的结构是,并且将有一个country-attribute而不是postal一个。保持不变的模板仍然试图从person.postal获取数据,而不是从person.country获取数据。因此,undefined甚至是一个错误将是后果。
为了防止出现这种情况,属性的名称应该从元服务中获取并构建在HTML页面中。
工作流看起来应该是这样的:
发布于 2016-08-09 13:34:21
http://jsfiddle.net/Lt024p9h/1/
<div ng-controller="MyCtrl">
<table border="1">
<tr ng-repeat="person in persons">
<td ng-repeat="attr in query.attribs">
{{person[attr.id]}}
</td>
</tr>
</table>
</div>好吧,这是怎么回事?
因此,通过你的小提琴,如果我们得到你想要显示的属性,然后使用对象作为一个相联阵列,我们会做什么。
这需要attr.id和属性匹配。
https://stackoverflow.com/questions/38851880
复制相似问题