0

私は SpineJS を使用する初心者で、楽しい時間を過ごしています。

そして、連絡先の例を終えて、SpineJS の他のコンポーネントを見たとき、

Web サイト (多くの html ページを含む) に関する例がないことに気付きました。

SpineJS は Web サイトの設計に適したフレームワークではないようです。

(このようなフレームワークはシングルページアプリケーションに適していると思います)

Web サイトの最初のビューで「websocket」オブジェクトを作成する必要があるため、そのように考えました。

最初のビューを離れるときに「websocket」オブジェクトを保持できません(htmlページが変更されました)。

ユーザーがログアウトするまで、この「websocket」をずっと保持する必要があります。

そうですか?または、マルチビュー Web サイトを作成する方法はありますか?

(AngularJS フレームワークは $route サービスでこれをサポートします。- フレームワーク全体をリロードせずに html ページをロードできます。)

4

1 に答える 1

0

単一ページの RIA 内に複数ページの Web サイトを確実に実装できます。わかりました、それは逆説的に聞こえます。サーバー側からは、単一のページをレンダリングしてソース コードを提供しています。ただし、クライアント コード内では、Router オブジェクトはルートに基づいてページをまったく異なる方法でレンダリングする場合があります。

編集/追加:

これが最適かどうかはわかりませんが、アプリのソース コード内の別の html ファイルに保存されているテンプレートをアプリが読み込む方法を次に示します。myview.template = app.TemplateManager.fetch('grids/item');

  templateManager: {
    JST : {},   // hash table so not to load same template twice

    fetch: function(path) {
      url = "/app/templates" + path + ".html";

      if (!this.JST[path]) {
        $.ajax({ url: url, async: false }).then(function(contents) {
          this.JST[path] = _.template(contents);
        });
      } 

      return this.JST[path];
    }
  });
于 2013-01-28T04:47:49.700 に答える