以角度表达式输出JSON数据

时间:2016-08-18 10:28:43

标签: javascript angularjs json

我的PHP脚本返回此JSON数据:

{
  "userData": {
    "userName": "knows_nothing",
    "userFullName": "Jon Snow",
    "userMoney": "124.01"
  }
}

如何在我的网页中访问变量(userName等)?

例如:

JS

var app = angular.module('dashboard', []);
app.controller('userDataCtrl', function($scope, $http) {
    data = "{query:'userData'}"
    $.post("api/mysql.php", {query:'userData'})
    .then(function (response) {$scope.userData = response.userData;});
});

HTML

<div ng-app="dashboard">
    <div ng-controller="userDataCtrl">
        <h1> Username: {{ userData.userName }} </h1>
        <p> Balance: {{ userData.balance }} </p>
    </div>
</div>

这让我疯了几个小时:(

这是我在`console.log(response.userData)

时输出的内容
Object { userName: "knows_nothing", userFullName: "Jon Snow", userMoney: "124.01" }

3 个答案:

答案 0 :(得分:1)

也许您必须在then-function

之外声明$ scope.userData变量

答案 1 :(得分:1)

根据$http documentation,您应该阅读public async Task<JsonResult> Post([FromBody]SubCategory subCategory) 的回复。所以,在你的情况下:

response.data

应该这样做。

答案 2 :(得分:0)

检查你的响应是否是数组,如果数组那么你需要做这样的事情, $ scope.userData = response [0] .userData。

如果仍未获得解决方案,请分享或回复格式。完整的响应结构。