Angular.js ng重复阵列显示为JSON



我有一个问题,我正在尝试使用ng-repeat在angularjs中显示一个数组,但它显示了整个JSON数组

这是我的数组

$scope.problems = [
    {
        problem: "problem1",
        works: [
            "a0",
            "a9"
        ]
    }
]

这是我要显示的地方

<li ng-repeat="works in problems | filter: searchCard">{{works}}</li>

现在{{works}}标签在实时文档中显示了这一点:

{"problem":"probleem1","works":["a0","a9"]}

根据大多数教程,我看到的内容应该显示A0和A9而不是整个JSON系列。

我第二个可能完全不同的问题是,我如何正确显示文本,但也隐藏所有文本,直到一个人使用输入来搜索"作品"输入字段。

当您在ng-repeat上具有对象array 时,您必须选择该对象params;在此示例中,我们的对象参数为"问题" " works"

在我们的对象中,我们具有"字符串数组" 和字符串数组没有参数,因为我们在此示例{{work}}中直接使用直接使用它。/p>

<li ng-repeat="item in problems | filter: {problem: searchCard}">
  {{item.problem}}
  <ul>
    <li ng-repeat="work in item.works">{{work}}</li>
  </ul>
</li>

您可以使用@maher所述的嵌套ng重复。另外,为了隐藏数据直到键入searchCard,您可以在嵌套ui中使用ng-if指令。

<li ng-repeat="item in problems | filter: searchCard">
  {{item.problem}}
  <ul ng-if="searchCard">
    <li ng-repeat="work in item.works">{{work}}</li>
  </ul>
</li>

最新更新