X



【JavaScript】backbone専用スレ [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0004Name_Not_Found
垢版 |
2015/01/24(土) 07:25:13.52ID:???
Backbone.jsは小さく、モバイル環境や低速な接続の環境にも適しています。
2時間か3時間もあれば、Backbone.jsのソースコード全体を読み理解できるでしょう。

とオライリーのbackbone.jsアプリケーション開発ガイドにあるけど
本当でしょうか?
正直かなりbackbone.jsについて勉強しているのですが
いまだに「こうする場合にはどうするんだ?」ということが掴めてません
コードを読めば二三時間で理解できるものなのでしょうか?
0005Name_Not_Found
垢版 |
2015/01/24(土) 10:52:43.56ID:???
>>4
Backboneを使うには、backbone.js(7.5KB)とは別に
underscore.js(6.0KB)とjQuery(29.3KB)が別に必要になる。合わせると37.4KB
backbone.jsはjQueryの代わりにZepto(10.3KB)も使えるから、その場合は18.4KB

AngularJSは、44.9KB、Knockoutは22.0KBである
よってサイズは、他のメジャーなフレームよりも小さい。

そしてAngularJSやKnockoutのようなデータバインディングタイプは
その仕様上、必然的に重くなる。

なので開発しやすさは無視するとして、
> 小さく、モバイル環境や低速な接続の環境にも適しています。
というのは間違いではない。

だけどフレームワークはウェブサイト全体にわかって使う時に
便利になるものでページの一部に取り入れるだけなら、
jQuery(Zepto)だけを使った方がいい。
0006Name_Not_Found
垢版 |
2015/01/24(土) 11:15:53.50ID:???
>>5
>>4 が聞きたいのはファイルサイズが小さくてモバイルにも適しているかどうかじゃなくて、2、3時間で理解できるかどうかじゃね?

ここに説明付きのコードがあるね。2、3時間とは行かなくても数日あれば十分読めると思う。ただ、backbone自体の説明だから、backboneを使ってああしたいこうしたいみたいな問題はまた別の話だと思う。
http://backbonejs.org/docs/backbone.html
0007Name_Not_Found
垢版 |
2015/01/24(土) 11:28:06.38ID:???
フレームワークで2、3時間で理解できるものなんてないよ

2、3時間でやれることはサンプルを動かす程度
それだけでわかったつもりになっている奴もいるが
ベストプラクティス(どういう作り方をするべきものか)を
理解してフレームワークの機能の足りない部分を
拡張するための方法まで理解するには数日、人によっては
数週間かかる
0008Name_Not_Found
垢版 |
2015/01/24(土) 18:28:47.76ID:jlKAUAJ/
ありがとうございます
0009Name_Not_Found
垢版 |
2015/01/27(火) 14:13:55.49ID:CrSdih1E
delegateEventsって、よくやるようにdocumentで受けるように出来るのかと思っていたのですが
http://backbonejs.org/docs/backbone.html
ここでコードを見ていると、this.$elにonしていました
デレゲートといっても$elに委譲するのが限界のようです
backboneを使う場合はdocumentで受ける方法は使わない方がいいんでしょうか?
backboneの枠から外れたやり方でハンドラをセットすればもちろん可能ですが、
フレームワーク標準でないやり方を混ぜるのはあまりいいと思いませんし・・
0010Name_Not_Found
垢版 |
2015/02/02(月) 10:08:16.99ID:???
要素がページ上に存在している場合は、その要素を指すCSSのセレクタを el として指定します。
el: '#footer'
以下のように、ビューを生成する際に既存の要素を el として指定できます。
var todosView = new TodosView({el:$('#footer')});

と、「Backbone.jsアプリケーション開発ガイド」にありますが
var todosView = new TodosView({el:'#footer'});
の間違いではないのでしょうか?
あるいはelにDOM要素を設定するなら分かりますが、
jQueryオブジェクトを渡しているので奇妙だと思います
0011Name_Not_Found
垢版 |
2015/02/02(月) 10:37:57.68ID:???
elはjqueryオブジェクトなのか?
と思いましたが
view.$el は $(view.el) と同義
とあるのでやっぱりelはdom要素のはず
0012Name_Not_Found
垢版 |
2015/02/02(月) 20:41:14.61ID:???
var button1 = $('<button></button>');
var view = new View({el: button1});

というようなコードがあったので、elにはjQueryオブジェクトを入れるようです・・
$elとの違いが曖昧でなんか気持ち悪い仕様ですね
0013Name_Not_Found
垢版 |
2015/02/02(月) 22:01:30.95ID:???
コードを読んだところ
コンストラクタからも呼ばれるsetElementはjQueryオブジェクトなるいはdomエレメントを取り、
jqueryオブジェクトの時は最初のdomエレメントをelに設定する
という挙動でした
それならおかしくもないかな
0014Name_Not_Found
垢版 |
2015/02/02(月) 22:58:42.97ID:???
>>13
> コンストラクタからも呼ばれるsetElementはjQueryオブジェクトなるいはdomエレメントを取り、
まあそれどちらかと言ったらjQueryの仕様なんだけどね。

$(ここ) には、セレクタ、DOM要素、jQueryオブジェクト どれを入れてもいい。

ただ本来、el (backboneの世界)にはjQueryオブジェクトを出さないほうがいいと思う。
elは要素、またはセレクタがいいだろう。
backboneはまともに使ってないから、backboneの考え方よくわからんけど。
0015Name_Not_Found
垢版 |
2015/02/03(火) 02:47:57.14ID:8/LFUgFK
たしかにsetElementはセレクタやタグも受けるので、
jqueryの機能と思想をかなり取り入れてる感じです
0016Name_Not_Found
垢版 |
2015/02/06(金) 04:33:26.65ID:???
>>9の件ですが
オライリーのbackbone本に
DOMのイベントに関連付けを行うには、ビューの events プロパティか jQuery.on() を使います。
とありました
jqueryでのイベントハンドリングも特に否定はしてないようですね
0017Name_Not_Found
垢版 |
2015/02/08(日) 03:25:42.87ID:???
var TodoList = Backbone.Collection.extend({
model: app.Todo,
// 完了済みの Todo 項目だけをフィルタリングして返します
completed: function() {
return this.filter(function(todo) {
return todo.get('completed');
});
},
// 未了の Todo 項目だけをフィルタリングして返します
remaining: function() {
// apply を使うことによって、関数内で this が指すコンテキストを
// 指定できます
return this.without.apply(this, this.completed());
}
});

こんなコードがオライリー「backboneアプリケーション開発ガイド」にあるのですが
filterには使っていないapplyをなぜwithoutには使っているのでしょうか?
filterもwithoutもコレクションに追加されたunderscoreの関数です。
どちらのメソッドの中でもthisはコレクション自身を指すはずなので、
わざわざapplyでthisを指定する必要はないと思うのですが、
どうなのでしょう
0018Name_Not_Found
垢版 |
2015/02/08(日) 03:33:56.55ID:???
オブジェクトが自分自身のメソッドを、applyで呼ぶ
ということに強い違和感があります
それならそのメソッドをそのオブジェクトが持つ意味があんまりないので
0019Name_Not_Found
垢版 |
2015/02/22(日) 04:50:21.72ID:???
ここのはそういう目的にapplyじゃないだろ。よく見ろ。
0024Name_Not_Found
垢版 |
2018/05/01(火) 20:41:28.04ID:l1wYHpV1
誰でもできる在宅ワーク儲かる方法
少しでも多くの方の役に立ちたいです
グーグルで検索するといいかも『金持ちになりたい 鎌野介メソッド』

48M8A
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況