Controller のプロパティを更新し、 で使用しようとしましたconsole.log()
。HTML ページにはプロパティの更新された値が表示されますが、console.log() はまだ古い値を示しています。私は何を間違えましたか?console.log() で新しい値を取得するには?
質問する
43 次
1 に答える
0
まず、プロパティで「get」を使用する必要があります。それ以外の:
console.log(this.controllerFor('index').latitude);
書きます
console.log(this.controllerFor('index').get('latitude'));
次に、navigator.geolocation.getCurrentPosition は非同期で実行され、すぐに返されるため、console.log は緯度が設定される前に実行されますが、返された後に実行されます。
3 つ目は、コントローラが設定される前にモデル フックが実行されることです。
第 4 に、モデルはオブジェクトでなければなりません。
あなたが何をしたいのかよくわかりませんでしたが、http://emberjs.jsbin.com/AHiVeGe/6/editで、緯度が設定された後にモデルのプロパティを変更し、console.log に記録しました。
于 2013-10-14T02:41:55.937 に答える