JSON形式でブログ投稿の配列を正常に返すWebAPIがあります。
[{"ID":1,"Title":"First Blog Post","Body":"Some Content"},{"ID":2,"Title":"Second BlogPost","Body":"Some other content"}]
演習のために、Knockout.jsを使用してすべての投稿をリストに表示したいと思います。
これが私のコードです:
<script>
$(document).ready(function () {
function AppViewModel() {
var self = this;
self.posts = ko.observableArray([
{ Title: 'Default Title', Body: 'Default Body' },
]);
$.getJSON('api/posts', function (data) {
ko.mapping.fromJSON(data, {}, self.posts);
});
}
ko.applyBindings(new AppViewModel());
});
私のバインディング:
<tbody data-bind="foreach: posts">
<tr>
<td data-bind="text: Title"></td>
<td data-bind="text: Body"></td>
</tr>
</tbody>
私のテーブルは空で表示されますが、何らかの理由でJSONデータが表示されていません...
答え: JSONからfromJSに変更する必要がありましたが、機能します。みなさん、ありがとうございました