我有最基本的"新手"AngularJS问题,请原谅我的无知:如何通过代码刷新模型?我确定它已在某个地方多次回答,但我根本找不到它.我在这里看了一些很棒的视频http://egghead.io并快速浏览了教程,但我仍然觉得我错过了一些非常基本的东西.
我在这里找到了一个相关的例子($route.reload()
),但我不确定我是否理解如何在下面的例子中使用它
function PersonListCtrl($scope, $http) {
$http.get('/persons').success(function(data) {
$scope.persons = data;
});
}
Run Code Online (Sandbox Code Playgroud)
...
<div>
<ul ng-controller="PersonListCtrl">
<li ng-repeat="person in persons">
Name: {{person.name}}, Age {{person.age}}
</li>
</ul>
</div>
...
Run Code Online (Sandbox Code Playgroud)
这一切都运行得非常好,每次重新加载页面时,我都会按预期看到人员列表
我确定我错过了一些基本的东西,但是花了一个小时试图解决它之后,我认为它值得一个问题.如果它重复,请告诉我,我会关闭+链接到它.
Ben*_*esh 72
你自己就在那里.要实现刷新,您只需将已有的功能包装在范围内的函数中:
function PersonListCtrl($scope, $http) {
$scope.loadData = function () {
$http.get('/persons').success(function(data) {
$scope.persons = data;
});
};
//initial load
$scope.loadData();
}
Run Code Online (Sandbox Code Playgroud)
然后在你的标记
<div ng-controller="PersonListCtrl">
<ul>
<li ng-repeat="person in persons">
Name: {{person.name}}, Age {{person.age}}
</li>
</ul>
<button ng-click="loadData()">Refresh</button>
</div>
Run Code Online (Sandbox Code Playgroud)
就"访问您的模型"而言,您需要做的就是访问控制器中的$ scope.persons数组:
例如(只是puedo代码)在您的控制器中:
$scope.addPerson = function() {
$scope.persons.push({ name: 'Test Monkey' });
};
Run Code Online (Sandbox Code Playgroud)
然后你可以在你的视图或任何你想做的事情中使用它.
归档时间: |
|
查看次数: |
145477 次 |
最近记录: |