为什么Angular的$http.get服务不起作用
Why Angular's $http.get service not working?
我在W3Schools上找到的关于Angular服务的示例遇到了麻烦,在这个特定情况下$http.get 一个。
我有一个 json.php 文件,其中有下一个 JSON:
{
"bands": [
{
"name": "Red hot chilli peppers",
"year": "2009",
},
{
"name": "Maroon 5",
"year": "2005",
},
{
"name": "ACDC",
"year": "2000",
}
]
}
以及应该遍历对象并显示其中数据的 Angular 和 HTML 代码,但它不起作用:
JavaScript
var serviceTestApp = angular.module('myapp3', []);
serviceTestApp.controller('controller3', function($scope, $http){
$http.get('json.php').then(function(response){
$scope.myData = response.data.bands;
});
});
.HTML
<div ng-app='myapp3' ng-controller='controller3'>
<ul>
<li ng-repeat='x in myData'>
{{x.name}}
</li>
</ul>
</div>
我在这里做错了什么?我使用 Angular 1.5.0
当你的意思是不工作时,你到底是什么意思?你的意思是它成功了,但没有返回你想要的?在这种情况下,您可能指向对象中的错误内容。还是抛出错误?
你应该像这样构建它:
$http.get('json.php').then(function(response){
// Place a debugger statement here to see if it's successful
$scope.myData = response.data.bands;
}, function(error) {
// No breakpoint needed as you'll see the error in the console window
console.error(error);
});
另一个原因可能是您没有将文件放在正确的位置。 json.php
意味着我希望它与控制器位于同一文件夹中。
相关文章:
- 如何使用WCF服务和javascript表单post上传.doc文件
- chrome.storage.sync.get未返回值-Angular服务
- 为什么我无法访问使用 $provide.provider 和 $injector.get 创建的服务
- 如何使用Javascript/jQuery将GET值从URL从PAGE1传输到JSON Web服务
- 为什么Angular的$http.get服务不起作用
- 在 $http.get 调用中获取服务上下文
- AngularJS服务,从$html.get返回预加载的数据或数据
- 使用 GET 和 POST 使用服务
- Angular JS:使用 $http.get() 导入 JSON 数据 - 在控制器中工作,不在服务中 - 为什么
- AngularJS:从http GET(来自REST服务)检索到的JSON数据中显示一个选择框
- 在具有多个$http.get的服务中使用promise和closure
- 如何避免来自服务的查询(get)被多次执行
- 谷歌应用程序脚本HTML服务-Can't get Keypress to work
- ajax GET无法工作(服务数据无法获取)
- 使用Angular服务的请求拦截器对REST get调用进行简单的身份验证
- 从Javascript和Mithril.JS中使用asp.net web服务- post /get请求的最佳方法/库是什
- 带有$http.get的AngularJS服务没有't将数据传递给控制器
- 在REST服务中使用ContainerResponse筛选器时,GET正在工作,但POST不工作
- Angular.js http.get() 服务不起作用
- 美元.ajax POST到我的web服务工作正常,但GET请求失败错误405方法不允许