8
フラッシュメッセージ用のバックボーンの拡張はありますか?これは、Webフレームワーク(少なくともサーバー側)の共通の機能のようです。そこ何もないように見える、と私は自分の作ることを試み:BackboneJSのフラッシュメッセージ
今class FlashMessenger extends Backbone.Model
constructor: ->
@messages = []
# add a message to the messages array
add: (type, message) ->
@messages.push
type: type
message: message
# returns all existing messages and clearing all messages
getMessages: ->
ret = @messages.slice(0)
@messages = []
return ret
、私は自動的に私の意見にそれらを注入することができますどのように思っていました。私はBackbone.Router.navigate()
例えば使用するときに表示するために私のメッセージを好きになるでしょう:
app.flashMessages.add("success", "Successfully logged in")
appRouter.navigate("dashboard")
# flash messages should show when I render the view
Woooaa。完璧!私はそのような解決策を探していました。 +1 –
素晴らしい!なぜあなたは 'Backbone.Events'をクローンして、既存のオブジェクトを使わないのですか? – skalee
まず、クローンしないでください。上記のように、または 'var Dispatcher = Backbone.Events.extend({});'によって実行されます。すべてのBackboneコンストラクタは組み込みの 'extend'メソッドを持っているようです。 Backbone.Eventsを使用する代わりに別のオブジェクトを作成する理由については、原則としてフレームワークを変更したくないので、後でカスタムメソッドを追加する必要があるかもしれません。このようにIMOはちょうどクリーナーです。 –