以前はserverRefresh()
、WAF を使用してエンティティを更新する方法がありました。init
イベントサーバー側をトリガーします。
angular-wakanda コネクタを使用してそれを行う方法は今のところありません。
何か不足していますか?
Angular-Wakanda コネクタで保存する前に、新しく作成されたエンティティのデータを初期化するにはどうすればよいですか?
バージョン 1.1.0 以降 (2016 年 5 月 11 日から)
バージョン 1.1.0 以降$recompute()
では、古い (以下を参照)$serverRefresh()
メソッドと同じことを行うメソッドを使用する必要があります。
ドキュメントはAngular-Wakanda Entity API Referenceにあります。
バージョン <1.1.0
上で現在バージョン (1.0.4) の Angular-Wakandaでも$serverRefresh()
、エンティティを呼び出すことでそれを行うことができます。
var entity = ds.Product.$create();
entity.$serverRefresh().$promise.then(function () {
//Your entity is updated with calculated attributes filled, and right events executed
});
何をするか$serverRefresh()
は次のとおりです。
init
、clientrefresh
クライアント側のエンティティが更新されます。clientrefresh
、クライアント側のエンティティを更新します確かに、それは非推奨であり、削除されます。ただし、バージョン 1.1.0 では、同じ動作をする、十分に文書化された、あいまいでない別の方法に置き換えられます。
今後、$serverRefresh() は非推奨の機能となり、次の 1.1.0 リリースで Angular-Wakanda コネクタから完全に削除されます。エンティティで $fetch() メソッドを使用できます。エンティティを再度フェッチし、すべての属性を更新します。次に、変更を適用して $save() を呼び出します。新しい Created エンティティの場合、次のように進めることができます。
var newProduct = ds.Product.$create();
newProduct.productName = "myProductName";
newProduct.price = 5.5;
newProduct.$save();
そして、この $save() はイベント init() をトリガーします。