私はUnderscore
とBackbone
で作業しています。 fetch
私のコレクションを作成する間、各モデルのfeatured_media
属性をimageId
配列にプッシュすることに決めました。問題は、console.log
を実行しているときに私がdevToolsの内部に見ていることです。プッシュで生成された最後の配列インスタンスを取得する方法は?
私は後だ配列がで非常に最後の1である:ここでは
var images = [];
var SlideModel = Backbone.Model.extend({
defaults: {
id:'',
featured_media:'',
date:'',
slug: '',
link:''
},
idAttribute: '_id'
});
var SlideCollection = Backbone.Collection.extend({
model: SlideModel,
url: 'http://localhost/dev/test.json',
parse: function(data){
return data;
}
});
var slideShow = new SlideCollection();
slideShow.fetch({
success: function(response){
_.each(response.models, function(slide){
new SlideModel({
id: slide.attributes.id,
featured_media: slide.attributes.featured_media,
date: slide.attributes.date,
slug: slide.attributes.slug,
link: slide.attributes.link
});
var self = this;
var mediaKey = $.makeArray(slide.attributes.featured_media);
var mKeys = new Array(_.join(_.values(mediaKey)));
mKeys = images.push(mKeys);
arr_keys = _.flattenDeep(images);
//console.log(mKeys);
arr_keys = _.map(arr_keys);
console.log(arr_keys);
});
},
error: function(response){
console.log(response);
}
});
がconsole.log(arr_keys)
戻って何のスクリーンショットです非常に底。それ以前のすべてのインスタンスではなく、単に配列を取得するにはどうすればよいですか?
アドバイスをいただければ幸いです。私のライブの例はCodePenです。乾杯!私が代わりにそれ以外の_.each
ループの内側に配列にアクセスしようとしていた
_.each(response.models, function(slide){
new SlideModel({
id: slide.attributes.id,
featured_media: slide.attributes.featured_media,
date: slide.attributes.date,
slug: slide.attributes.slug,
link: slide.attributes.link
});
var self = this;
var mediaKey = $.makeArray(slide.attributes.featured_media);
var mKeys = new Array(_.join(_.values(mediaKey)));
mKeys = images.push(mKeys);
arr_keys = _.flattenDeep(images);
//console.log(mKeys);
arr_keys = _.map(arr_keys);
});
console.log(arr_keys);
:
'_.each'ループの外側にアクセスしてください –
@HarryJoyああ私の良さ!まあ、私は全部ダム@ $$です!どのように私はこれを実現できなかったでしょうか?あなたは男、ハリー!乾杯! – DaveyJake