Javascript 在新数组中重复来自数组的信息时出错
错误控制台: 错误:[ngRepeat:dupes]中继器中不允许重复。使用“跟踪依据”表达式指定唯一关键点。中继器:差分m,重复键:对象:131,重复值:{“标题”:“菱形俯卧撑”,“视频”:“img/3mm.mp4”,“时间”:60,“校准”:3,“重复”:20} 上述错误有什么解决方法吗Javascript 在新数组中重复来自数组的信息时出错,javascript,html,angularjs,ionic-framework,Javascript,Html,Angularjs,Ionic Framework,错误控制台: 错误:[ngRepeat:dupes]中继器中不允许重复。使用“跟踪依据”表达式指定唯一关键点。中继器:差分m,重复键:对象:131,重复值:{“标题”:“菱形俯卧撑”,“视频”:“img/3mm.mp4”,“时间”:60,“校准”:3,“重复”:20} 上述错误有什么解决方法吗 $scope.moves = [ {title:"Jumping Jacks", length:"30", difficulty: "5 stars"}, {title:"Push Ups
$scope.moves = [
{title:"Jumping Jacks", length:"30", difficulty: "5 stars"},
{title:"Push Ups", length:"40", difficulty: "4 stars"},
{title:"Mountain Climbers", length:"60", difficulty: "2 stars"}
];
这很有效
$scope.workoutone =[
$scope.moves[0],
$scope.moves[1],
$scope.moves[2],
];
这不起作用,唯一明显的区别是我在重复信息
$scope.workouttwo =[
$scope.moves[2],
$scope.moves[1],
$scope.moves[2],
$scope.moves[0],
$scope.moves[1],
$scope.moves[2],
];
在一个新阵列中多次使用来自阵列的相同信息,是否有解决方法?提前谢谢你的帮助
编辑(向用户显示的HTML):
抱歉说得含糊不清!因此,用户最初会看到workoutone,但可以通过单击按钮选择查看其他训练,如WorkoutTo。Workoutone显示良好(代码如下),但用户单击workouttwo后,信息不会刷新。然后,当用户单击“开始训练”时,它会在训练中的每个动作中显示“NaN”
这是显示训练的代码
<ion-list>
<ion-item ng-repeat="m in workoutchoice" class="eachitem">
<div class="animateded slideInUp" style="width:90%;max-width:450px;height:45px;margin-left:auto;margin-right:auto;background-color:white;border:0px solid black;color:red;border-radius:7px;">
<div style="height:100%;float:left;border:0px solid blue;">
<img src="img/1-2.jpg" style="height:100%;align:center;border-radius:7px;">
</div>
<div style="width:40%;height:100%;float:left;border:2px solid blue;margin-top:8px;margin-left:5px;font-size:12px;">
{{m.title}}
</div>
<div style="width:25%;height:100%;float:right;border:2px solid red;text-align:right;margin-right:10px;color:black;margin-top:8px;font-size:12px;">
{{m.reps}}x
</div>
</div>
</ion-item>
</ion-list>
嘿,我已经收到相同的错误很多次了。为避免重复错误,请在ng repeat中使用$index
<ion-list>
<ion-item ng-repeat="m in workoutchoice track by $index" class="eachitem">
<div class="animateded slideInUp" style="width:90%;max-width:450px;height:45px;margin-left:auto;margin-right:auto;background-color:white;border:0px solid black;color:red;border-radius:7px;">
<div style="height:100%;float:left;border:0px solid blue;">
<img src="img/1-2.jpg" style="height:100%;align:center;border-radius:7px;">
</div>
<div style="width:40%;height:100%;float:left;border:2px solid blue;margin-top:8px;margin-left:5px;font-size:12px;">
{{m.title}}
</div>
<div style="width:25%;height:100%;float:right;border:2px solid red;text-align:right;margin-right:10px;color:black;margin-top:8px;font-size:12px;">
{{m.reps}}x
</div>
</div>
</ion-item>
</ion-list>
{{m.title}}
{{m.reps}}x
到底是什么不起作用?这看起来应该很好用吧?你有什么错误吗?你在期待什么?“这不起作用”不是一个可操作的问题陈述,告诉我们很多。您也没有真正确定期望值是什么。主题行提到了错误,但您忽略了解释中的任何内容。我很确定我知道那个错误是什么,在网上搜索应该很容易…但我不会浪费时间和精力在猜测上。对不起,我说得含糊不清…我添加了更多的代码和信息。非常感谢您的帮助:)您还可以发布包含正在调用的click函数定义的js吗?你还可以发布调用click函数的html代码吗?这些html都与解释无关<代码>工作按钮和工作按钮两个
不包括在其中。请提供相关的详细信息
$scope.bubble = function(selectedCal) {
$rootScope.bub = selectedCal;
console.log(selectedBook);
}
$scope.choosen = function(selectedChoose) {
$rootScope.workoutchoice = selectedChoose;
console.log(selectedChoose);
$ionicScrollDelegate.resize();
}
<ion-list>
<ion-item ng-repeat="m in workoutchoice track by $index" class="eachitem">
<div class="animateded slideInUp" style="width:90%;max-width:450px;height:45px;margin-left:auto;margin-right:auto;background-color:white;border:0px solid black;color:red;border-radius:7px;">
<div style="height:100%;float:left;border:0px solid blue;">
<img src="img/1-2.jpg" style="height:100%;align:center;border-radius:7px;">
</div>
<div style="width:40%;height:100%;float:left;border:2px solid blue;margin-top:8px;margin-left:5px;font-size:12px;">
{{m.title}}
</div>
<div style="width:25%;height:100%;float:right;border:2px solid red;text-align:right;margin-right:10px;color:black;margin-top:8px;font-size:12px;">
{{m.reps}}x
</div>
</div>
</ion-item>
</ion-list>