AngularJS更改控制器参数
AngularJS changing controller parameter
我一直在研究AngularJS,并试图弄清楚所有内容如何链接在一起,但我有点卡住了。
如何传递变量以更改加载并显示在页面上的 JSON?我以为这是一个按钮点击,指令会与控制器对话,但我不太确定。
如果我的 JSON 像控制器一样
......var id = 'peter';
var person = $resource('http://myjson.com/'+id+'.json')
例如,我不知道如何根据按钮单击更改id
。
任何帮助都非常感谢
我将尝试尽可能简单地解释,您可以使用 ngClick 指令将数据作为参数传递给从 HTML 到控制器的函数。将调用控制器内部的函数,因为它与使用 $scope 的 ngClick 指令绑定。
示例:
.html:
<div ng-app="App" ng-controller="ctrl">
<div ng-repeat="itemId in items">
<button ng-click="myClickFunc(itemId)">click {{itemId}}</button>
</div>
</div>
.js:
var app=angular.module('App', ['ngResource']);
function ctrl($scope,$resource){
$scope.items=[1,2,3,4];
$scope.myClickFunc=function(itemId){
var person = $resource('http://myjson.com/get/:id');
person.get({id: itemId}).$promise.then(function(data) {
// success
$scope.myData = data;
}, function(errResponse) {
// fail
});
}
现场示例:http://jsfiddle.net/choroshin/zJ5G6/
相关文章:
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- ROR:如何在不重新加载浏览器的情况下从控制器获取参数
- 当显式定义控制器参数时,默认模型绑定器会发生异常
- 使用AJAX POST从javascript到带有Strong参数的Rails4控制器
- 角度指令控制器:参数不是函数,未定义
- 如果没有Ember中的控制器,我如何更改查询参数
- 在嵌套递归指令中将参数传递给父控制器方法
- 如何将控制器http调用转换为接受参数的服务/工厂模式
- 从 javascript 获取 MVC 控制器中的操作参数时出错
- 重用需要“解析”参数的“ui-route”控制器
- 如何使用 ajax 和 javascript 将参数传递给控制器
- 将 Jade Link 中的参数传递给节点控制器
- 在构造控制器、服务等时作为函数参数传递之前列出的角度 JS 变量
- 将传递的函数参数附加到控制器内的$scope
- ExtJS使用控制器中的View Form Data作为Ajax请求参数
- Ajax调用后控制器中的参数为Null
- AngularJS-如何在ng中继器中调用以项值为参数的控制器函数
- Angularjs将函数从控制器传递到指令(或从指令调用控制器函数)-带参数
- 控制器错误:参数不是函数,未定义
- AngularJS控制器解析:参数“控制器”不是一个函数,得到了对象