yii2から取得したobservableArrayデータをどのように埋めることができますか?のは、私はノックアウトアプリケーションで静的なJSONの配列を持っているとしましょう:ノックアウトはYii2からobservableArrayまでJSONを取得します
var countries = [{"id": 1, "name": "1"}, {"id": 2, "name": "2"}, {"id": 3, "name": "3"}]
私はこれを行うと:
var VM = function(){
this.countries = ko.observableArray(countries);};
それはすべて良いことです。そして、私はHTMLタグ選択のためにそれを使い続けることができます。しかし、サーバーからデータを取得しようとすると、動作しません。ここに私がやろうとしている方法があります。サーバーからのデータ :
$d = Countries::find()->all();
$r = Yii::$app->response();
$r->format = Response::FORMAT_JSON;
$r->data = $d;
return $r;
ノックアウトアプリケーションコード:
var VM = function(){
this.countries = ko.pureComputed(function(){$.getJSON("/index.php?r=countries/index").done(function(data){return data;});});};
ブラウザ(/index.php?r=countries/index)から見た場合、配列が正しいになります
[{"id": 1, "name": "1"}, {"id": 2, "name": "2"}, {"id": 3, "name": "3"}]
しかし、私は観察可能な配列に結合する方法を理解できません。どのように私はサーバーからデータを取得し、observableArrayとしてそれらを作るのですか?
あなたはそれをフィドルに入れることができますか? – gkb
今日はできません。電話で書く。 – starmucks