7

Backbone.js アプリケーションでハッシュ URLと非ハッシュURLを組み合わせる方法はありますか?

設定しBackbone.history.start({pushState: true})ました。ユーザーが何らかのリンクをクリックすると、サーバーから JSON データをフェッチし、ページを更新Backbone.history.navigateし、ブラウザーの URL を変更する呼び出しを呼び出します (たとえば、からexample.com/zlinsky/kampan/mf/example.com/moravskoslezsky/kampan/mf/)。
ユーザーがブラウザーから URL をコピーして 2 番目のタブで開くと、同じページが表示されます (この方法で更新されたすべてのページには、サーバー上に対応するページがあります)。これはまさに私が欲しいものです。

しかし、今私は問題を抱えています...

私も<select>ページにいくつかあります。ユーザーがそれらの値を変更すると、ページに動的な変更を加えます (サーバーから JSON をフェッチせずに、更新はクライアント側でのみ行われます)。<select>に従って URLを変更したいと思いますexample.com/moravskoslezsky/kampan/mf/#state1

Backbone.js でそれを行う方法を見つけることができませんでした。に設定pushState: trueした場合Backbone.historyRouterハッシュタグを無視します。
を設定pushState: falseすると、上記の最初の段落で説明したように URL を設定できません。

ヒントをありがとう。

4

1 に答える 1

2

あなたは呼び出すことができます: Backbone.history.navigate( "/foo/bar#fragment" )

しかし、私はそれが良い考えだとは思わない。

おそらく、クエリ文字列を使用できます。Backbone.history.navigate( "/foo/bar?foo=bar", true )これは、最新のブラウザーに含まれます。http://domain.tld/foo/bar?foo=barつまり、次のようになります。http://domain.tld#/foo/bar?foo=bar

于 2012-02-02T21:17:28.610 に答える