尝试使用角度来检索json:" https://api.github.com/users/angular",更准确地说是来自该json的id属性。 关于为什么失败的任何想法(在调试模式中我得到了
'响应未定义'
):
<html ng-app="myViewer">
<head>
<script data-require="angular.js@*" data-semver="1.2.25" src="https://code.angularjs.org/1.2.25/angular.js"></script>
</head>
<body ng-controller="MyController">
{{ result.id }}
{{ err }}
</body>
<script type="text/javascript">
(function() {
var app = angular.module("myViewer", []);
var MyController = function($scope, $http)
{
$http.get("https://api.github.com/users/angular")
.then(function1, onerr);
var function1 = function(response)
{
$scope.result = response.data;
}
var onerr = function(reason)
{
$scope.err = "nightmare";
}
}
app.controller("MyController", ["$scope", "$http", MyController]);
}());
</script>
</html>
我希望结果是您在浏览器中复制该链接时可以看到的ID。
答案 0 :(得分:2)
这是一个有效的提琴手 https://jsfiddle.net/paka2/8roj37q9/1/
angular.module("myViewer", []).controller("myCtrl", function($scope,$http){
this.result = {};
this.err ;
$http.get("https://api.github.com/users/angular")
.then(function1, onerr) ;
function function1 (response)
{
$scope.result = response.data;
}
function onerr (reason)
{
$scope.err = "nightmare";
}
});
希望它有所帮助!!
答案 1 :(得分:1)
如果我更正订单,则有效:
var function1 = function(response)
{
$scope.result = response.data;
}
var onerr = function(reason)
{
$scope.err = "nightmare";
}
$http.get("https://api.github.com/users/angular")
.then(function1, onerr);
在我用它调用之前应该定义function1。
答案 2 :(得分:0)
我认为你的承诺是错误的。
$http.get('https://api.github.com/users/angular').then(function(response){
$scope.result = response.data;
})
请参阅下面的相同HTTP调用:
答案 3 :(得分:0)
尝试这个我认为你错误地将控制器定义为mycontroller,它应该是SecondController。
match goal with
| [ |- context[C (@B ?x _)] ]
=> setoid_rewrite (Rewrite x)
end.
答案 4 :(得分:0)
尝试使用以下
var function1 = function(response){$ scope.result = response; }