私は、ヘッダがレンダリングされた後でdivをサイズ変更するためにいくつかのコードを実行しようとしています。私はここでの答えとバックボーンのドキュメントを見てきました。これは私が書いたものです:レンダリング機能をオーバーライドしたバックボーンビューで子ビューが失われる
Backbone.View.extend({
template: header_tpl,
render: function() {
this.$el.html(this.template({});
setTimeout(function() {
$(window).on("resize",function(){
$(".somediv").height($(".someotherdiv").height())
})
.resize()
}, 0);
return this;
},
childViews: {
// Some childViews in here
}
});
この動作はしますが、このビューのchildViewsはレンダリングされません。私はそれがthis.template()に渡されている空のオブジェクトと関係していると思います。バックボーンのドキュメントはthis.model.attributesを渡すと言っていますが、このビューにはモデルはありません。データが渡されていないシンプルなヘッダーです。
これはBackbone.Viewか他の何人かの子供ですか?ビューのコードをもっと表示できますか –
Backbone.View.extend()の内部 –
@CoryDanielsonコードを追加しました –