私は完全にローカルのバックボーンアプリを作っています。サーバ側は含まれていません。アプリにいくつかの初期ローカルデータを提供します。データは実際にはjsonファイルで、dataというフォルダに格納されているCollectionデータです。だから、私はdata/datalist.json
であるURL属性をCollectionに提供し、initalデータを取得するにはthis.collection.fetch()
を使用します。すべてうまくいく。私のアプリケーション全体とデータがローカルの場合、Backbone.Model.save()はどのように使用できますか?
しかし、このコレクションのjsonデータファイルの対応するモデルデータへの変更をViewに保存するとします。 this.model.save({name: newName})
は私にとってはうまくいかないようです。私はページ全体をリフレッシュするたびに、アプリはまだインラインデータファイルを表示します。では、Viewのアイテムが更新、削除、または作成されたときに、データファイルをどのように変更する必要がありますか? Modelにurl属性を設定する必要はありますか?
localStorageとsessionStorageの唯一の欠点は、それをサポートしていない旧式のブラウザだから、Lawnchair(http://westcoastlogic.com/lawnchair/adapters/)のような古い技術のラッパーあなたは機能しているブラウザのより広いベースです。しかし、まだ残っているものは、代わりにLawnchairを使用する新しいBackbone.syncを作成する必要があるかもしれません。 –
@ JohnMunschもし私がchromeやfirefoxのような最新のブラウザを使っているのであれば、localStorageプラグインだけでは十分ではないと言われていますか? **私は**新しいBackbone.syncを作成する必要がありますか? – chaonextdoor
@chaonextdoor絶対にそうではありません。 「When can I use ...」(http://caniuse.com/#search=localstorage)のような優れたツールを参照すると、サポートしようとしているすべてのブラウザでlocalStorageが利用可能であると表示されます。そうでなくても、大部分のブラウザでサポートされている場合は、後で戻って後で別のバージョンの同期のために交換して、うまく動作しているアプリケーションと使いたい人がいればブラウザのサポートを追加してください。 –