AngularJS:附加部分视图而不是替换当前视图
我想知道是否有可能在视图中附加一个partial,而不是替换上一个 用例如下所示:AngularJS:附加部分视图而不是替换当前视图,angularjs,view,partial,Angularjs,View,Partial,我想知道是否有可能在视图中附加一个partial,而不是替换上一个 用例如下所示: 我正在制作一份问卷 开始问卷调查时,DOM中只有1个问题可见 问题1的答案决定了问题2应该是什么 在回答问题1时,问题2被附加到DOM中,在问题1下 如果问题1已更改,则所有其他问题都将重置/从dom中删除,并出现一个新的、未回答的问题2(在1下) 也许使用一个部分a问题不是解决问题的方法,在这种情况下,请让我知道首选方法(普通/无角度JS?)让您大致了解: 鉴于您的应用程序是angularjs,您应该将所有
- 我正在制作一份问卷
- 开始问卷调查时,DOM中只有1个问题可见
- 问题1的答案决定了问题2应该是什么
- 在回答问题1时,问题2被附加到DOM中,在问题1下
- 如果问题1已更改,则所有其他问题都将重置/从dom中删除,并出现一个新的、未回答的问题2(在1下)
也许使用一个部分a问题不是解决问题的方法,在这种情况下,请让我知道首选方法(普通/无角度JS?)让您大致了解: 鉴于您的应用程序是angularjs,您应该将所有问题都放在控制器的模型中:
$scope.questions = [
{
"question":"foo?",
"options":["bar1","bar2","bar3","bar4"]
"answer":2
},
{
},
{
}
];
// initially show the 1st question
$scope.currentQuestIndex = 0;
$scope.currentQuestion = $scope.questions[$scope.currentQuestIndex];
并将视图中的currentQuestion用作:
<div>Question: {{currentQuestion.question}}</div>
这将动态更新您的视图!感谢angularjs提供的数据绑定功能。您可以使用ng-include.Ah感谢您的洞察力。。不过我可能会稍微改变一下方法。使用包含所有问题的模型,并根据某些过滤器显示这些问题。最初,过滤器只“通过”第一个问题,但随着用户逐步通过这些问题,更多的问题将被“解锁”。我想我需要一个过滤器,因为不是所有的问题都需要。回答Q1为“是”将产生不同的Q2,然后回答“否”
$scope.submitAnswer = function(){
// check if the answer is correct
if(isCorrect){
$scope.currentQuestion = $scope.questions[$scope.currentQuestIndex + 1];
}
}