我一直在做一个 angularjs 项目并遇到了一个我似乎无法解决的问题。问题是我有一个控制器,它有一个代表几个考试的数组。
function ExamCtrl($scope) {
$scope.exams = [{
"title" : "Some fancy title",
"owner" : "John Smith",
"questions" : [
{"type" : "openquestion", "question" : "Is cheese yummy?", "answer" : "Yes"},
{"type" : "mcquestion", "question" : "Is cheese yummy?", "answers" : [{"a" : "Yes"}, {"b" : "No"}]}
]
}];
}
就像你可以看到考试对象中有一个数组,其中包含几个问题对象。这些对象中的每一个都有不同的模式(openquestion、mcquestion 等)。我可以保证每个具有特定问题类型的对象都具有相同的架构。
我面临的问题是呈现属于每个问题类型的正确 HTML。在他们使用的 angularjs 网页的教程中
<li ng-repeat="question in exams.questions>{{question.type}}</li>
这种方法的问题是我无法区分不同的问题类型。我一直在尝试用指令来解决这个问题,并且一直在与编译和链接函数进行激烈的斗争,但一直未能找到一个好的解决方案。