$ rootScope没有使用forEach更新

时间:2016-05-18 00:46:39

标签: javascript angularjs foreach rootscope

有趣的行为?我的菜单对象包含在此时代码为= true的菜单项。这个片段在工厂中运行。

table.insert()

似乎虽然循环中的值设置为false,但是它没有应用于$ rootScope,或者更新不是?是否需要应用新值?

亲切的问候,

1 个答案:

答案 0 :(得分:2)

forEach有一个传入的数组元素的副本(通过值传递而不是通过引用传递)。要更新原始数组,请使用$ rootScope.menus [i]:

angular.forEach($rootScope.menus, function (menu, i) {
    $rootScope.menus[i] = false;
});