このURLのページは表示することが出来ませんでした。 IQサーバー
backbone.marionettegithub.com/marionettejs/backbone.marionette Backboneで使える細かい部品をコンポーネント化して再利用可能にするコンセプトかな オライリー本でも説明が1章あったので後で見てみる addyosmani.github.com/backbone-fundamentals/#backbone.marionette 典型的なrenderとかは書かなくても書いてあるのでコードを書く量を減らせるゾンビViewといわれるメモリ管理の問題をRegionという概念でうまく処理するLayoutというUIを定義するViewを組み合わせることで可読性が高くなるCompositeViewで部品化ここで指摘されてたのは多分こんな感じ 似たようなコードをたくさん生産するような場合は生産性があがるのかも グダグダですけど、13分くらいから
Backbone.js Tips And Patterns | Smashing Coding を読みました。 ほとんどは特に真新しくもない当たり前な内容なんですが、 "BROADCAST CUSTOM ERROR EVENT" はいいなと思ったので紹介します。 このパターンは Model で複数の属性のバリデーションを行いたい場面で使うものです。 RETURN AN ERROR OBJECT まず、普通な validate の実装です。 validate: function (attrs) { var errors = []; if (_.isUndefined(attrs.name)) { errors.push({ attr: 'name', message: 'Name is required' }); } if (errors.length) return errors; } ま
Backbone.js Advent Calendarの15日目です。軽めにいきます。 Backbone.Modelのattributesにオブジェクトを設定するときの注意点など。attributesはsetとかで設定される値をオブジェクトして持っているやつです。 まず次のようにsetでattributesを設定します。 var MyModel = Backbone.Model.extend(); var m = new MyModel(); m.set('hoge', 'fuga'); m.set('foo', { bar: 'baz' }); このようにhogeには文字列、fooにはオブジェクトを設定しました。そしてtoJSONでattributesを取得して値を更新してみます。 var attrs = m.toJSON(); attrs.hoge = 'new fuga'; attr
I have 2 models and one collection. JobSummary is a model, JobSummaryList is a collection of JobSummary items, and then I have a JobSummarySnapshot model that contains a JobSummaryList: JobSummary = Backbone.Model.extend({}); JobSummaryList = Backbone.Collection.extend({ model: JobSummary }); JobSummarySnapshot = Backbone.Model.extend({ url: '/JobSummaryList', defaults: { pageNumber: 1, summaryLis
Lets say you have a Backbone.js based messaging system on your application, and you want to stay synced with the server so you could alert your users when a new message arrives. You would like to call the server once every couple of seconds and ask for status updates. Or maybe your model represents an on going background task, you want to poll for status updates. You could start with something bas
object.once(events, callback, [context]) object.listenTo(other, event, callback) object.stopListening([other], [event], [callback]) Backbone.Model Backbone.Model.extend([properties], [classProperties]) Backbone.Model を継承した新しいモデルを作ります。 properties インスタンスメンバを定義します。 var User = Backbone.Model.extend({ say: function () { console.log("Hello."); } }); var user = new User(); user.say(); //-> Hello. classPr
閲覧上の注意 この記事で対象としているバージョン0.5.3は結構古いので注意してください。例えばこの記事の内容でいえば、$elプロパティなどが追加されています。 その他の割りと新しい情報は Backbone.js Advent Calendar 2012 などにあります。 (追記ここまで) Backbone.js Advent Calendar もようやく折り返し地点。 そんな節目のエントリで取り上げるのが Backbone.js プログラミングでの最重要登場人物の一人である View です。 前回のエントリで Backbone.js では View が各種の処理を起動するということを説明しました。 今回は View を使って、イベントハンドリングを行う方法について主に解説していこうと思います。 View と DOM tree View の役割は大きく分けて2つあります。 特定の DOM
最近、JavaScriptを多用するWebアプリケーションの開発に携わる機会が増えてきました。 jQueryのイベントハンドラをベタに書いていくのは、規模が小さいうちは良いのですが、機能追加・仕様変更等が多発すると少々面倒なことになります。このまま大きくなっていくと破綻が目に見えているので、構造化されたアプリケーションを作りたいと思いBackbone.jsを学び始めました。 Backbone.js 公式サイト 7月上旬から学び始めたので、まだ20日程度ですが、その中で学んだこと等を紹介します。これから勉強を始めてみようと思う人の参考になれば、幸いです。 以下の内容は、Backbone.jsの熟練者が指南しているわけではないことを予めご了承ください。ちなみに、平日の夜と、時間が取れるときの週末を使って勉強して、イベントサービスのWebAPIを串刺し検索するアプリ等を作るくらいには、Backb
はじめに Backbone.js を使って UI を実装しているけど、モデルやビューが増えてきた。1ファイルに収めるには多いんで、ファイルを分割して実装し、最終的には結合したい。 そこで、RequireJS を使ってモデルやビューをモジュールにして、ファイルを分割しつつ開発できるようにしてみる。 RequireJS とは RequireJS は JavaScript のファイルやモジュールを非同期でロードできる JavaScript ライブラリ。 RequireJS 最適化機能もあり、公開時はモジュールをひとまとめにできる。 RequireJS と Backbone.js を組み合わせてみる 以前作った TODO アプリのサンプルで練習してみる。モデルとビューとテンプレートを1ファイルに記述していたので、それを別ファイルに分割する。 ディレクトリ構成 RequireJS の導入でディレクト
Backbone.js provides structure to JavaScript applications, but it leaves a lot of design patterns and decisions up to developers who end up running into common problems when they first begin developing in Backbone.js. In this article, Phillip Whisenhunt will explore different design patterns that you can use in your Backbone.js applications, and he’ll look at many of the common gotchas that trip u
Backbone Patterns Building apps with Backbone.js Here, I try to document the good practices that our team has learned along the way building Backbone applications. This document assumes that you already have some knowledge of Backbone.js, jQuery, and of course, JavaScript itself. Table of contents Model patterns Bootstrapping data View patterns Inline templates JST templates Partials Animation buf
backbone.jsで作成したモデル(Backbone.Model.extendで作成したオブジェクト)はsave(),destroy(),fetch(),create()などのメソッドを持っている。これらは、呼ばれると裏側でsync()メソッドを呼び出している。このsync()がサーバ側に問い合わせて、永続化が行われると言う仕組み。デフォルトでは以下のような形でREST形式で問い合わせが行われる。 モデルのthis.urlが/api/fooの時の例 モデルが呼ぶメソッド url HTTPのメソッド create /api/foo POST save(既にデータが存在している場合) /api/foo PUT destroy /api/foo DELETE fetch /api/foo FETCH backbone.jsのモデルは、このように同じURLに対して、HTTPメソッドを分ける形で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く