を使用して定義されたモデルがあり、$resource正常にロードされています。
ロードされた各インスタンスは、約束どおり、私が定義したクラスのインスタンスです。
(以下の例は、Angular ドキュメントからのものです。その中で、User.getであるオブジェクトが生成されますinstanceof User。)
var User = $resource('/user/:userId', {userId:'@id'});
ただし、各ユーザーが次のように接続されていると想像してください。
{
"username": "Bob",
"preferences": [
{
"id": 1,
"title": "foo",
"value": false
}
]
}
オブジェクトPreferenceに価値のあるメソッドを追加するファクトリを定義しました。Preferenceしかし、 User が読み込まれるとき、それらは当然 s でpreferencesはありません。Preference
私はこれを試みました:
User.prototype.constructor = function(obj) {
_.extend(this, obj);
this.items = _.map(this.preferences, function(pref) {
return new Preference(pref);
});
console.log('Our constructor ran'); // never logs anything
}
しかし、それは効果がなく、何も記録しません。
Users'preferences配列の各項目を のインスタンスにするにはどうすればよいPreferenceですか?