1. Vue2との比較1. Vue3の新機能
2. Vue2とVue3の応答原理の比較
欠点:
解決:
3. 配列の変更を検出するために配列メソッドを書き直す
アドバンテージ:
欠点:
上記引用「[Vue2 と Vue3 の比較]」(https://www.cnblogs.com/yaxinwang/p/13800734.html) 4. 直感的な体験現状、実際の業務ではVue2が主流となっている
2. Vue3 を使用したデータバインディングの例前回の記事 Vue3 統合 HTTP ライブラリ axios の詳細 では、バックグラウンド データの返却を実現し、フロント ページに表示しました (コンソールではありますが) が、これはまだ 90% 程度しか完了していないことを意味します。 次のステップは、バックグラウンド インターフェースからデータを返す方法と、それをページに表示する方法です。 1. refを使用してデータバインディングを実装する
<テンプレート> <a-レイアウト> <a-layout-sider width="200" style="background: #fff"> <a-メニュー モード="インライン" v-model:selectedKeys="selectedKeys2" v-model:openKeys="openKeys" :style="{ 高さ: '100%', 右境界線: 0 }" > <a-サブメニューキー="sub1"> <テンプレート #タイトル> <span> <ユーザーによるアウトライン /> サブナビ1 </span> </テンプレート> <a-menu-item key="1">オプション1</a-menu-item> <a-menu-item key="2">オプション2</a-menu-item> <a-menu-item key="3">オプション3</a-menu-item> <a-menu-item key="4">オプション4</a-menu-item> </a-サブメニュー> <a-サブメニューキー="sub2"> <テンプレート #タイトル> <span> <ラップトップのアウトライン /> サブナビ2 </span> </テンプレート> <a-menu-item key="5">オプション5</a-menu-item> <a-menu-item key="6">オプション6</a-menu-item> <a-menu-item key="7">オプション7</a-menu-item> <a-menu-item key="8">オプション8</a-menu-item> </a-サブメニュー> <a-サブメニューキー="sub3"> <テンプレート #タイトル> <span> <通知の概要 /> サブナビ3 </span> </テンプレート> <a-menu-item key="9">オプション9</a-menu-item> <a-menu-item key="10">オプション10</a-menu-item> <a-menu-item key="11">オプション11</a-menu-item> <a-menu-item key="12">オプション12</a-menu-item> </a-サブメニュー> </a-メニュー> </a-layout-sider> <レイアウトコンテンツ :style="{ 背景: '#fff', パディング: '24px', マージン: 0, 最小高さ: '280px' }" > {{電子書籍}} <前> {{電子書籍}} </pre> </a-レイアウトコンテンツ> </a-レイアウト> </テンプレート> <script lang="ts"> 'vue' から {defineComponent、onMounted、ref} をインポートします。 'axios' から axios をインポートします。 エクスポートデフォルトdefineComponent({ 名前: 'ホーム'、 設定(){ console.log('セットアップ'); 定数 ebooks = ref(); マウント時(()=>{ axios.get("http://localhost:8888/ebook/list?name=spring").then(応答 =>{ console.log("マウントされた状態"); const データ = 応答.データ; ebooks.value=データコンテンツ; }) }) 戻る { 電子書籍 } } }); </スクリプト> 知識ポイント:
再コンパイルしてサービスを開始すると、次のような結果が表示されます。 2. リアクティブを使用してデータバインディングを実装する同様に <テンプレート> <a-レイアウト> <a-layout-sider width="200" style="background: #fff"> <a-メニュー モード="インライン" v-model:selectedKeys="selectedKeys2" v-model:openKeys="openKeys" :style="{ 高さ: '100%', 右境界線: 0 }" > <a-サブメニューキー="sub1"> <テンプレート #タイトル> <span> <ユーザーによるアウトライン /> サブナビ1 </span> </テンプレート> <a-menu-item key="1">オプション1</a-menu-item> <a-menu-item key="2">オプション2</a-menu-item> <a-menu-item key="3">オプション3</a-menu-item> <a-menu-item key="4">オプション4</a-menu-item> </a-サブメニュー> <a-サブメニューキー="sub2"> <テンプレート #タイトル> <span> <ラップトップのアウトライン /> サブナビ2 </span> </テンプレート> <a-menu-item key="5">オプション5</a-menu-item> <a-menu-item key="6">オプション6</a-menu-item> <a-menu-item key="7">オプション7</a-menu-item> <a-menu-item key="8">オプション8</a-menu-item> </a-サブメニュー> <a-サブメニューキー="sub3"> <テンプレート #タイトル> <span> <通知の概要 /> サブナビ3 </span> </テンプレート> <a-menu-item key="9">オプション9</a-menu-item> <a-menu-item key="10">オプション10</a-menu-item> <a-menu-item key="11">オプション11</a-menu-item> <a-menu-item key="12">オプション12</a-menu-item> </a-サブメニュー> </a-メニュー> </a-layout-sider> <レイアウトコンテンツ :style="{ 背景: '#fff', パディング: '24px', マージン: 0, 最小高さ: '280px' }" > <strong>データバインディングの結果に ref を使用する:</strong><p></p> {{電子書籍1}} <p></p> <前> {{電子書籍1}} </pre> <strong>データバインディング結果に ReactiveF を使用する:</strong><p></p>{{ebooks2}} <p></p> <前> {{電子書籍2}} </pre> </a-レイアウトコンテンツ> </a-レイアウト> </テンプレート> <script lang="ts"> 'vue' から {defineComponent、onMounted、ref、reactive、toRef} をインポートします。 'axios' から axios をインポートします。 エクスポートデフォルトdefineComponent({ 名前: 'ホーム'、 設定(){ console.log('セットアップ'); //データバインディングにはrefを使用します。const ebooks=ref(); // リアクティブデータバインディングを使用する const ebooks1 = reactive({books:[]}) マウント時(()=>{ axios.get("http://localhost:8888/ebook/list?name=spring").then(応答 =>{ console.log("マウントされた状態"); const データ = 応答.データ; ebooks.value=データコンテンツ; ebooks1.books = データコンテンツ; }) }) 戻る { 電子書籍1: 電子書籍、 ebooks2:toRef(ebooks1、"書籍") } } }); </スクリプト> 知識ポイント: 再コンパイルしてサービスを開始すると、次のような結果が表示されます。 3. 最後にフロントエンド開発が人々に与える達成感は、 これで、Vue3 を使用したデータバインディングとリストデータの表示に関するこの記事は終了です。Vue3 のデータバインディングとリストデータの表示に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL パスワードに特殊文字が含まれている場合とコマンドラインからログインする場合
>>: dockerを使用してdubboプロジェクトをデプロイする方法
これは新しいバージョンではもう不可能なようで、推奨されません。そうでない場合は、ソフト リンクを直接...
この記事では、スクラッチ効果を実現するためのJavaScriptキャンバスの具体的なコードを参考まで...
誰もがボックス モデルの構成を、内側から外側まで、コンテンツ、パディング、境界線、マージンについて知...
1. 事前準備 (windows7+mysql-8.0.18-winx64) 1. ダウンロードアド...
目次1. 特徴2. 例3. オプション4. 基本的な文法5. ライフサイクル6. ルーティング管理 ...
いつから始まったのかはわかりませんが、コンピュータの電源を入れてインターネットに接続するたびに、デー...
データのバックアップと復元パート3の詳細は次のとおりです基本的な概念:バックアップ、現在のデータまた...
この質問は、Nuggets のメッセージから生まれました。友人が、次のコードの高さ遷移アニメーション...
1. インストール1. MySQLをダウンロードするダウンロードアドレス: リンクアドレスブラウザで...
1. Javaプロジェクトをjarパッケージにパッケージ化するここではMavenツールを使用します...
DOM の概念DOM: ドキュメント オブジェクト モデル: ドキュメント オブジェクト モデルは、...
この記事では、Ubuntu 18.04でのVMware Toolsのインストールと設定について記録し...
多くのプロジェクトでは、検証コードの送信など、カウントダウン機能を実装する必要があります。ここで、簡...
META タグは、HTML 言語のヘッダー領域にある補助タグです。作成者、日時、Web ページの説明...
導入2日前に見た問題について詳細に書きます。バイトコンピューターがバイナリに基づいていることは誰もが...