我有这段代码(仅显示相关部分):
:
:
<span ng-repeat="One_Selected_Method in This_Page.Parameters_and_Methods[$index].Selected_Test_Methods"
class="badge badge-pill badge-primary">
{{One_Selected_Method}}
<span>
<!-- The use of "$parent.$index" is to account for the nesting where the actually needed index is that of the parent -->
<button id="Param_Method_{{$parent.$index}}_{{One_Selected_Method}}"
class="button"
ng-click="Remove_Selected_Method($parent.$index,One_Selected_Method)"
style="border-radius: 20px;background:red">
<font color="white">X</font>
</button>
</span>
</span>
:
:
它是已经很大的应用程序的一部分。
问题是当点击按钮时,函数Remove_Selected_Method
被调用两次,因此会发生两次删除。
在调用;$event.stopPropagation();
之后也尝试了Remove_Selected_Method
但没有改变行为。无法弄清楚原因。
我应该注意到整个应用程序中有很多地方使用ng-click
添加药片,标签,记录等以及删除它们。以上是我第一次有这种奇怪的行为。
事实证明,函数的第二次调用是由我用来删除函数splice
中的条目的Remove_Selected_Method
引起的:在函数的开头添加了一个日志,并且拼接,它显示两次,但在评论拼接后,只有一次。
我不太明白为什么......