mvc 4 を使用して、SPA アプリケーションで多くの Windows を開くことは可能ですか。
つまり、ユーザーのリストがあります。ユーザーを開いてビューに移動すると、同じビューに戻って別のビューを開くことができます。次に、そのユーザーの状態を保持している最初に開かれたユーザーに直接移動することを選択します。
あなたが私の質問を理解しているかどうかわかりません。
mvc 4 を使用して、SPA アプリケーションで多くの Windows を開くことは可能ですか。
つまり、ユーザーのリストがあります。ユーザーを開いてビューに移動すると、同じビューに戻って別のビューを開くことができます。次に、そのユーザーの状態を保持している最初に開かれたユーザーに直接移動することを選択します。
あなたが私の質問を理解しているかどうかわかりません。
シングルページアプリケーションとは何かを誤解しているかもしれません。ページから移動しないことを除いて、通常の Web ページとまったく同じルールで再生されます。
ウィンドウなどのようなものはありません。実際のアプリケーション ウィンドウをエミュレートする div にすぎません。あなたが説明したことは、正しいdivを作成し、それらを正しく配置/配置するだけで十分です。たとえば、しばらく前に、Windows 7 のルック アンド フィールを模倣するウィンドウ マネージャーを KO で作成しました。
ここで見つけることができます。
https://github.com/madcapnmckay/Knockout-UI
シングル ページ アプリは高度なトピックであり、意味を理解する前に深く掘り下げないように注意する必要があります。
編集
ビューモデルを分離する方法はたくさんあります。私は常に、アプリ全体に対して 1 つのマスター ビューモデルを持っています。あなたの場合、JavaScriptでUserViewModelクラスを作成し、新しいものを作成してから、監視可能な配列に追加します。
var user1 = new UserViewModel(ajaxdata);
self.users.push(user1);
var user2 = new UserViewModel(ajaxdata);
self.users.push(user2);
<div data-bind="foreach: users">
<div>
... your user window markup goes here
</div>
</div>
オプションで、インライン テンプレートの代わりにテンプレート バインディングを使用できます。データのロードに関しては、あなた次第です。UserViewModel を新しくする前に ajax 呼び出しを実行してユーザー データをフェッチするか、最初にすべてのデータをロードし、表示したいときにそれらを新しくすることができます。
お役に立てれば。