JavaScript フレームワーク デザイン パターンの詳細な説明

JavaScript フレームワーク デザイン パターンの詳細な説明

動画

ここに画像の説明を挿入

Model(模型) - モデルは、データを保存および取得するオブジェクトまたは JAVA POJO を表します。データが変更されたときにコントローラーを更新するロジックを含めることもできます。

View(視圖) - ビューは、モデルに含まれるデータの視覚化を表します。

Controller(控制器) - コントローラーはモデルとビューに対して動作します。モデル オブジェクトへのデータの流れを制御し、データが変更されたときにビューを更新します。ビューとモデルを分離します。

一方通行です

最優秀選手

ここに画像の説明を挿入

MVP の核となるのはプレゼンター層です。この層の核となるのは DOM 要素の操作です。jQuery によるリスト ページの実装を例にとると、プレゼンターは主にモデル内のデータをループで HTML タグと結合し、ビューに追加します。

ムヴヴム

ここに画像の説明を挿入

mvvm の核はモデル層にあり、その核はデータに対する操作です。mvp モードと比較すると、コーディングの焦点は dom に対する操作からデータに対する操作に移っています。 VM レイヤーはビュー レイヤーにデータを表示し、ビュー レイヤーのデータをモデル レイヤーに渡します。 VueはviewModelの典型的な例です

Vueのソース

VueはReactの仮想DOM技術とAngularのNGディレクティブ技術を活用しています。

スパ mpa

MPA: 複数ページのアプリケーション

特徴: 最初の読み込みは高速ですが、その後の読み込みは低速です。初期の開発コストは低いですが、その後の保守コストは高くなります。

SPA: シングルページアプリケーション

最初の読み込みは遅くなりますが、その後の読み込みは速くなります。初期の開発コストは高いが、その後の保守コストは低い。 (主に再利用が多い)

要素を作成する

var li = document.createElement(ele,src,content);
//ele 作成する要素 //src 要素の属性 //content 要素の内容var li = document.createElement('li',{className='list-li'},'123');
<li className="list-li">123<li>

クラス

クラス Person {
   コンストラクタ(x,y) {
      this.x = x;
   }
   追加() {
      コンソールにログ出力します。
   }
}
var person = new Person(1,2);
typeof Person // 関数 クラスの本質はコンストラクタです Person === Person.prototype.constructor //true クラスはコンストラクタのプロトタイプを指します person.hasOwnProperty(x); //true
person.hasOwnProperty(y); //偽
person.hasOwnProperty(add); // 偽
コンストラクタ内のこれはインスタンス化されたオブジェクトを指しているので、xはpersonのプロパティであり、yとaddはPerson.prototype person.__proto__.hasOwnProperty(add) //trueに追加するのと同じです。

クラス内の関数は、コンストラクターのプロトタイプに追加するのと同じです。

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScript デザインパターン戦略パターン実装原則詳細説明
  • JavaScript デザイン パターン - ビジター パターンの原則と使用例の分析
  • JavaScript デザインパターン - テンプレートメソッドパターンの原則と使用例の分析
  • JavaScript デザイン パターン - オブザーバー パターンの原則と使用例
  • JavaScript デザインパターン - 状態パターンの原則と使用例
  • JavaScript と JQuery フレームワークの基本チュートリアル

<<:  独自のサーバーを素早く構築する方法の詳細なチュートリアル(Java 環境)

>>:  Prometheus を使用して、MySQL の自動増分主キーの残りの使用可能パーセンテージをカウントします。

推薦する

Vueの学習手順

目次1. v-text (v-instruction name = "variable&q...

よく使われるシングルページアプリケーションウェブサイト共有

CSS3お願いしますこのウェブサイトを自分で見て、パラメータを変更し、CSS3効果をオン/オフにする...

MySQL SQL ステートメント分析とクエリ最適化の詳細な説明

パフォーマンスの問題のあるSQL文を取得する方法1. ユーザーからのフィードバックを通じてパフォーマ...

HTMLバージョン宣言DOCTYPEタグ

通常のウェブサイトのソースコードを開くと、ソースコードは<!DOCTYPE htmlで始まる必...

JS 日付コントロール My97DatePicker の基本的な使い方

My97DatePicker は非常に柔軟で使いやすい日付コントロールです。使い方はとても簡単です。...

CSS で美しい時計アニメーション効果を実装するためのサンプルコード

仕事を探しています!!!事前準備:まず、このアニメーションは、以前のローディングアニメーションとクー...

あまり一般的ではないが便利な CSS 属性操作の完全ガイド

1. カスタムテキスト選択 ::選択{ 背景: 赤; 色: 黒; } 2. ビデオコントロールからダ...

Linux の Centos7 に Mysql5.7.19 をインストールする詳細なチュートリアル

1. MySQLをダウンロードするURL: https://dev.mysql.com/downlo...

Apache Flink の任意の Jar パッケージのアップロードにより、リモート コード実行の脆弱性が再発する問題が発生する (脆弱性警告)

脆弱性の説明Apache Flink は、分散ストリームおよびバッチ データ処理用のオープン ソース...

HTMLタグのデフォルトスタイルの配置

html、address、blockquote、body、dd、div、dl、dt、fieldset...

Echarts バー水平棒グラフのサンプルコード

目次横棒グラフデータとスタイルを動的に更新するeChartsの幅と高さの適応の問題を解決する縦棒グラ...

Win10 での MySQL 5.7 の詳細なインストールと設定のチュートリアル

1. MySQL 5.7を解凍する2. 新しい設定ファイルmy.iniを作成し、 D:\Free\m...

ページコンテンツ全体を中央に配置して、高さがコンテンツに合わせて自動的に拡張されるようにする方法

ページコンテンツ全体を中央に配置する方法と、コンテンツに合わせて高さを自動的に拡大縮小する方法。これ...

CSS3を使用して背景画像の色を変更するさまざまな方法

CSS3 では画像の色を変更できます。これからは複数の絵をデザインする必要がなくなり、いつでも修正で...

CSS3アニメーションを使用して、小さい円から大きい円に拡大し、外側に広がる効果を実現する例

序文この記事では、CSS3アニメーションを使用して、円が小さいものから大きく拡大し、外側に広がる効果...