データベースからのデータを基本的な角度アプリに入力しようとしています。 w3schoolsの場合と同様の例これまでのコードです:レスポンスがビューに表示されない(nodejs、mysql、angularjs)
<div ng-app="myApp" ng-controller="customersCtrl">
<table>
<tr ng-repeat="x in names">
<td>{{ x.id }}</td>
<td>{{ x.appid }}</td>
</tr>
</table>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
$http.get("http://localhost:3000/test")
.then(function (response) {$scope.names = response.data.records;});
});
</script>
ただし、データは取得されません。 iはhttp://localhost:3000/testから取得応答は以下の通りである:
[
{ "ID":1、 "APPID":1}、{ "ID":2、 "APPID":1}、{ {"id":20、 "appid":1}、{"id":38、 "appid":1}、{"id":39、 "id":7、 "appid":1} appid ":3}、{" id ":44、" appid ":3}、{" idid: ID ":70、" APPID ":2}、{" ID ":71、" APPID ":2}、{" ID "72"、 "APPID:2}
]
私はブラウザとpostmの両方からチェックしました。上記のレスポンスでresponse.data.recordsを置き換えた場合、テーブルにはレスポンスの値が表示されます。
私は何かをつぶすべきであることを知っていますが、何とか私はそれを逃しています。私の最高の推測は、レスポンスの形式のものです。あなたのサンプル応答がrecord
プロパティ内にラップされることなく、単に配列であるので、あなたが
$scope.names = response.data;
で
$scope.names = response.data.records;
を交換する際に、あなたの問題が解決されなければならないあなたの示したデータによると
偶然のこと、私はただそれを理解しました。とにかく試行錯誤して得たので説明に感謝します。 –