angularリソースを使用していますが、
オブジェクト自体から計算されたプロパティを使用して、ファクトリから返されたオブジェクトを拡張したいと思います。
post get ステップを ngResource ファクトリに追加するにはどうすればよいですか?
angularリソースを使用していますが、
オブジェクト自体から計算されたプロパティを使用して、ファクトリから返されたオブジェクトを拡張したいと思います。
post get ステップを ngResource ファクトリに追加するにはどうすればよいですか?
次のようにプロトタイプを拡張できます。
angular.factory('Person', ['$resource', function($resource) {
var Person = $resource(...);
...
Person.prototype.computedProp = this.prop1 + this.prop2;
return Person;
}]);
私はまだ互換性をテストしていませんが、ビュー コードで Angular のスタイルを維持するためにこれを行った方法を共有したいと思います。
アイデアは、REST 呼び出しが距離 (km 単位) と継続時間を (moment.js で解析可能な形式で) 与えるというものです。私が達成したかったのは、KM/時間で平均速度を生成する計算されたプロパティです。
.factory('Times', function ($resource) {
var Times = $resource("api/users/:userid/times/:id", {});
Times.prototype.__defineGetter__("average_speed", function () {
return this.distance / moment.duration(this.duration).asHours();
});
return Times;
})