Javascript TypeError:无法读取属性';插入前';空的
我有一个这样的数组Javascript TypeError:无法读取属性';插入前';空的,javascript,jquery,angularjs,jquery-ui,angularjs-ng-repeat,Javascript,Jquery,Angularjs,Jquery Ui,Angularjs Ng Repeat,我有一个这样的数组 var users = [ { 'id': 1, 'name': 'user name', 'age': 25, ... }, { 'id': 2, 'name': 'user name', 'age': 25, ... } ... ] 我使用ng repeat将其显示为列表。像这样 <li ng-repeat="user in users"> {{user.name}} <a href="#" ng-click
var users = [
{ 'id': 1, 'name': 'user name', 'age': 25, ... },
{ 'id': 2, 'name': 'user name', 'age': 25, ... }
...
]
我使用ng repeat
将其显示为列表。像这样
<li ng-repeat="user in users">
{{user.name}}
<a href="#" ng-click="UserCTRL.remove_user(user.id)">remove user</a>
</li>
{{user.name}
我使用jquerysortable对li
进行了排序。sortable
起作用,而remove\u user
起作用。但是,当我将最后一个li移动到上面的任何位置时,它都会工作,直到我尝试删除用户,然后我就会得到错误
谢谢你的帮助。这个错误是什么意思?我不知道你是否解决了这个错误,因为这个问题是两年前提出的。我碰巧遇到了与您一样的错误,我猜错误可能是
无法读取null的属性'insertBefore'
。在ng repeat
内添加包裹层div
,以防止角度元素被弄乱,并使用刚刚添加的div
列表对其进行排序,如下所示应可防止此错误:
<li ng-repeat="user in users">
<div>
{{user.name}}
<a href="#" ng-click="UserCTRL.remove_user(user.id)">remove user</a>
</div>
</li>
{{user.name}
浏览器中安装的扩展也可能导致此错误。在chrome浏览器中启用“Dark Reader”扩展时,我遇到了相同的错误。请检查,您似乎必须锁定列表。为什么要使用jQuerysortable
?AngularJS已经内置了排序功能。请参阅@fdomig我想让用户根据自己的喜好对用户列表进行排序(通过拖放)列表中的用户。然后我保存了新的职位。@HenkJansen我在没有angularjs的情况下尝试了它。我认为angularjs犯了错误