14

昨日、JavaScriptを使用して最初のMetroスタイルアプリの開発を開始しました。Visual Studio 2011でこれらのテンプレートの1つを使用しました。このプロジェクトテンプレートには、WinJSに大きく依存する生成されたコードが多数含まれています。全体の構造は、ビューと対応するコードビハインドファイルを備えたASP.NETを思い起こさせます。ビュー間のナビゲーションを担当するnavigator.jsファイルもあります。データ全体はdata.jsにあり、さまざまな関数を使用して取得できます。

私はbackbone.jsを使用しましたが、MVC構造やルーティングなどの概念が非常に優れていることがわかりました。私の質問は基本的に、backbone.jsを使用してそのようなMetroスタイルアプリを実装できるかどうかです。WinJSを削除して、最初から始めることはできますか?backbone.jsを現在の構造に統合する必要がありますか?その時はどのように見えるでしょうか?サードパーティのJavaScriptフレームワークの使用に制限はありますか?生成された構造をそのままにしておく必要がありますか?

JavaScriptを使用してMetroスタイルアプリを開発するためのベストプラクティスとパターンは何ですか?

ありがとう

4

2 に答える 2

9

MetroスタイルのJavaScriptアプリケーション内で任意のJavaScriptフレームワークを使用できます。jQueryに関する次の関連質問を参照してください。

jQueryとWindows8JavaScriptメトロスタイルアプリ

WinJSフレームワークはいくつかの機能を実行します。1つは、データの管理と操作、サービスリクエストの作成などのための非UI APIのセットです...これらは、他のJavaScriptフレームワークに簡単に置き換えることができます。2つ目はUIレイヤーです。ここでは、少し苦労するかもしれません。WinJS UIは、MetroDesignLanguageに準拠するように設計されています。これを独自のUIレイヤーに置き換えると(たとえば、jQuery UIを使用して)、アプリケーションは正しく表示されません。

個人的には、UIレイヤーにWinJSを使用し、ランタイム(状態の永続化、アプリの切り替えなど)と統合しますが、移植性を確保するために、コードの大部分にBackboneやKnockoutなどのより標準的なJavaScriptライブラリを使用します。

于 2012-04-03T07:17:34.207 に答える
0

MVVMにはKnockoutjsとRequirejsを使用しています。視覚効果にはjQueryを使用しています。

私のデータメインは少しこのように見えます:

(function () {
    "use strict";

    var app = WinJS.Application;

    app.onactivated = function (eventObject) {
        require(["/scripts/knockout"], function(ko){
            // My knockout viewModel and data binding goes here
        });
    };

    app.start();
})();

代わりにバックボーンを使用したい場合は、セットアップも同様だと思います。

于 2012-11-26T08:42:08.697 に答える