我的设置非常简单
的index.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
</head>
<body ng-app="locationApp" ng-controller="locationController">
<button ng-click="getLocation()">Get Location</button>
<br />
Latitude: {{city.Latitude}} <br />
Longitude {{city.Longitude}} <br />
<script src="Scripts/lib/angular.min.js"></script>
<script src="Scripts/app.js"></script>
</body>
</html>
app.js:
var locationApp = angular.module('locationApp', []);
var locationController = locationApp.controller("locationController", function ($scope, $http) {
$scope.getLocation = function () {
$http.get("https://localhost:44320/api/location?cityName=sg").then(function (location) {
$scope.city = location;
});
}
});
点击“获取位置”按钮后,我的约束{{city.Latitude}}和{{city.Longitude}}仍为空白。
我通过在Chrome中设置断点来尝试调试,我的值确实显示出来了。所以我不确定我错过了什么。有什么帮助吗?
我正在使用AngularJS 1.6
答案 0 :(得分:2)
传递给then
函数的参数是响应对象。响应对象包含数据:
$http.get("https://localhost:44320/api/location?cityName=sg").then(function (response) {
$scope.city = response.data;
});
答案 1 :(得分:1)
该位置是否从Web服务返回响应?
你真的想做吗:
data
答案 2 :(得分:1)
您希望在get函数中返回$scope.city = location.data
对象。
尝试{{1}}
答案 3 :(得分:-2)
在获得响应以启动新摘要后使用$ scope.apply()。