我是 Angular JS 的新手。这是我的代码
<div ng-controller="firstCtrl">
<div ng-repeat="city in citynames">
<p>{{city.name}}</p>
</div>
</div>
<div ng-controller="secondCtrl">
<button ng-click="changethis()">Click Here</button>
</div>
var app=angular.module('mainApp',[]);
app.controller('firstCtrl',['$scope','$http',function($scope,$http){
$scope.citynames=[{name:'Chennai',id:'1'},
{name:'Bangalore',id:'2'},
{name:'Hyderabad',id:'3'},
{name:'Coimbatore',id:'4'},
{name:'Mysore',id:'5'},
];
}]);
app.controller('secondCtrl',['$scope','$http',function($scope,$http){
$scope.changethis=function(){
$scope.citynames=[{name:'Delhi',id:'1'},
{name:'Sydney',id:'2'},
{name:'Newyork',id:'3'},
{name:'London',id:'4'},
];
};
}]);
我想在单击第二个 Controller ng-click
事件时更改第一个 Controller ng-repeat
。但使用此代码不会改变。
最佳答案
每个 Controller 都有一个单独的范围,您可以使用 $rootScope https://docs.angularjs.org/api/ng/service/ $rootScope 是一个全局范围或使用 Angular 服务/工厂 https://docs.angularjs.org/guide/services在 Controller 之间共享范围。
关于javascript - 使用另一个 Controller 更改 ng-repeat 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33756594/