Xu Fei によるこの記事のセクション 5:「MVVM が優れた選択である理由」で、ビジネス モデルとビュー モデルについて言及されていますが、具体的には何を指しますか?
【ビジネスモデル】は【ドメインモデル】と同様に、ビジネス内容を表現するために使用されるデータを指します。例えば、タオバオのビジネスモデルは【商品】、ブログのビジネスモデルは【ブログ投稿】、Twitterのビジネスモデルは【ツイート】です。これは、名前、説明、時刻、作成者、価格、その他の [実際の] データ フィールドの内容を含む、古典的な MVC のモデルとして理解できます。
そして、[View Model] は MVVM の台頭後の新しい概念です。完全な Web アプリを実装するには、データに加えて、UI インタラクションに多くの [状態] も必要になります。例: ポップアップ ボックスが開いているかどうか、ユーザーが入力中かどうか、リクエストの読み込みステータスを表示する必要があるかどうか、グラフのデータ分類のために追加のフィールドを表示する必要があるかどうか、グラフのサイズとスタイルの動的な変更など。ユーザーが入力するときのテキスト... これらは特定のデータ フィールドとは関係ありませんが、実際のフロントエンド ビジネス シナリオにとって非常に重要なビュー ステートは [ビュー モデル] と考えることができます。 Vue などの MVVM ライブラリでは、上記の例の状態は JS 変数によって表現および制御できます。JS 変数はデータ モデルとみなすこともできます。
したがって、ビジネスモデルとビューモデルはフロントエンドにおいて非常に重要な概念です。 MVVM がビジネス モデル データとページ間のバインディング関係を解決した後、Redux などの状態管理ライブラリは、リッチ インタラクティブ ページでのビュー モデルの状態の極端な拡張によって引き起こされる一連の問題を解決したいと考えています。これらのモデルをより深く理解することは、実際にフロントエンドの現在の開発方向を理解するのに役立ちます。
栗を一つあげればわかります
【ビジネスモデル】は【ドメインモデル】と同様に、ビジネス内容を表現するために使用されるデータを指します。例えば、タオバオのビジネスモデルは【商品】、ブログのビジネスモデルは【ブログ投稿】、Twitterのビジネスモデルは【ツイート】です。これは、名前、説明、時刻、作成者、価格、その他の [実際の] データ フィールドの内容を含む、古典的な MVC のモデルとして理解できます。
そして、[View Model] は MVVM の台頭後の新しい概念です。完全な Web アプリを実装するには、データに加えて、UI インタラクションに多くの [状態] も必要になります。例: ポップアップ ボックスが開いているかどうか、ユーザーが入力中かどうか、リクエストの読み込みステータスを表示する必要があるかどうか、グラフのデータ分類のために追加のフィールドを表示する必要があるかどうか、グラフのサイズとスタイルの動的な変更など。ユーザーが入力するときのテキスト... これらは特定のデータ フィールドとは関係ありませんが、実際のフロントエンド ビジネス シナリオにとって非常に重要なビュー ステートは [ビュー モデル] と考えることができます。 Vue などの MVVM ライブラリでは、上記の例の状態は JS 変数によって表現および制御できます。JS 変数はデータ モデルとみなすこともできます。
したがって、ビジネスモデルとビューモデルはフロントエンドにおいて非常に重要な概念です。 MVVM がビジネス モデル データとページ間のバインディング関係を解決した後、Redux などの状態管理ライブラリは、リッチ インタラクティブ ページでのビュー モデルの状態の極端な拡張によって引き起こされる一連の問題を解決したいと考えています。これらのモデルをより深く理解することは、実際にフロントエンドの現在の開発方向を理解するのに役立ちます。
栗を一つあげればわかります
リーリー