v-for ディレクティブリストといえば、ループについても触れなければなりません。v-for 命令は、Vue でループを実装できる操作です。 v-for ディレクティブは、配列に基づいて繰り返しレンダリングするためのディレクティブであり、通常はリストやテーブルを表示するために使用されます。 文法:
例: <本文> <スタイル> * { マージン: 0px; パディング: 0px; } ul { リストスタイル: なし; } </スタイル> <!--データを走査--> <div id="アプリ"> <!--項目: キー--> <!--値: 値--> <!--インデックス: 下付き文字--> <ul v-for="(item,value,index) 人"> <li>{{インデックス}}:{{値}}:{{項目}}</li> </ul> </div> <script src="js/Vue.js"></script> <スクリプト> 新しいVue({ el: "#app", データ: { テキスト: 「私たちの旅は星と海へ!」 arr: ["マカバカ", "うーん", "リトル・ドット", "トム・ブリド", "ディン・ディン・カー"], 人々: id: 1, 名前:「チョウ・ユンファ」 年齢: 65 } } }) </スクリプト> </本文> 例からわかるように、v-for ディレクティブは文字列や配列を走査できるだけでなく、オブジェクト型を走査し、キー値やインデックスに従ってリストや表形式で表示することもできます。 計算されたプロパティ一般的に、プロジェクト開発では、データを処理する必要があることがよくあります。基本的な式やフィルターを使用するだけでなく、Vue の計算プロパティを使用してプログラムを最適化し、複雑な計算を完了することもできます。 例: 追加と削除だけでなく、ファジー フィルタリングも実装します。 まず、v-for文を使ってテーブルにデータを表示します。 <table class="table table-hover table-border"> <tr class="info"> <th>番号</th> <th>名前</th> <th>年齢</th> <th>はじめに</th> </tr> <tr v-for="リスト内の項目"> <td>{{item.id}}</td> <td>{{アイテム名}}</td> <td>{{item.age+"岁"}}</td> <td>{{item.show}}</td> </tr> </テーブル> <スクリプト> 新しいVue({ el: "#app", データ: { 「リスト」: [{ "id": 1, "名前": "張三", 「年齢」: 18, "show": "張三の紹介" }, { "id": 2, "名前": "李思", 「年齢」: 19, "show": "李斯の紹介" }, { "id": 3, "名前": "王武", 「年齢」: 20, "show": "王武の紹介" }, { "id": 4, "名前": "趙劉", 「年齢」: 21, "show": "趙劉の紹介" }, { "id": 5, "名前": "孫巴", 「年齢」: 22, "show": "Sun Ba の紹介" }] } </スクリプト> 計算属性を使用してファジークエリを実装する <p><input type="text" v-model="selectkey" placeholder="入力してください"></p> 計算: { 新しいリスト: 関数() { var _this = これ; _this.lists.filter(function(val) { を返します val.name.indexOf(_this.selectkey) != -1 を返します。 }) } } 計算されたプロパティを関数の形式で計算オプションに記述し、v-for 文で走査されたコレクションをフィルタリングされた newlist コレクションに変更し、文字列に部分文字列があるかどうかを判断してリスト コレクション内のデータをフィルタリングし、フィルタリングされたデータを v-for 走査に渡して表示します。 追加と削除の実装 <p class="input-group"> <span class="input-group-addon">番号:</span> <input type="text" v-model="id" placeholder="番号を入力してください" class="form-control"> </p> <p class="input-group"> <span class="input-group-addon">名前:</span> <input type="text" v-model="name" placeholder="お名前を入力してください" class="form-control"> </p> <p class="input-group"> <span class="input-group-addon">年齢:</span> <input type="text" v-model="age" placeholder="年齢を入力してください" class="form-control"> </p> <p class="input-group"> <span class="input-group-addon">情報:</span> <input type="text" v-model="show" placeholder="情報を入力してください" class="form-control"> </p> <p class="input-group"> <button @click="add()" class="btn btn-primary">情報を追加</button> </p> <td> <button v-on:click="dels(item.id)" class="btn btn-primary">削除</button> </td> メソッド: { 追加: 関数() { var 女の子 = { "id": this.id, "名前": this.name, "年齢": this.age, "表示": this.show } this.lists.push(女の子); }, 削除: 関数(o) { // 添え字を削除し、いくつか削除します for (let i = 0; i < this.lists.length; i++) { if (this.lists[i].id == o) { this.lists.splice(i, 1); } } } } メソッドを通じてイベントをバインドし、追加操作と削除操作を処理するために、2 つのボタン イベント メソッド (add と dels) を追加します。 追加する場合はpushメソッドを使用します。削除する場合はspliceメソッドを使用して添字のみで削除します。渡される値はidなので、正確性を保証するために、ループして添字を決定し、削除操作を実行する必要があります。 これは計算されたプロパティです。データを処理するために使用されます。 リスナーのプロパティ計算プロパティに加えて、Vue はデータの処理とデータの変更の監視のための監視プロパティも提供します。 違いは、リスニング プロパティには 2 つのパラメーターが必要であることです。1 つは現在の値で、もう 1 つは更新された値です。 例: 時計: 最初: 関数 (val) { this.full = val + ' ' + this.last }, 最後: 関数 (val) { this.full = this.first + ' ' + val } } 監視プロパティと比較すると、計算プロパティの方が明らかに優れているため、特別な事情がない限り、計算プロパティの使用を優先することをお勧めします。 要約する効率的な Vue フロントエンド開発のためのリストレンダリング手順に関するこの記事はこれで終わりです。より関連性の高い Vue リストレンダリングコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ドメイン名、ポート、IPに基づいてnginx仮想ホストを構築する
>>: JDBC を使用して MySQL を操作するための簡単な分析では、Class.forName("com.mysql.jdbc.Driver") を追加する必要があります。
序文: vue3.0の要素フレームワークを使用します。要素はvue2.0をサポートしており、vue3...
この記事は、2018 年 9 月 19 日に Adobe Systems Inc で開催された ...
図に示すように: しかし、IE6で表示すると、right:1px:になります。 IE6 には、幅と高...
01. コマンドの概要貼り付けコマンドは各ファイルを列ごとに結合します。これは、2 つの異なるファイ...
目次1. インストール2. main.jsにインポートする3. 使用Vue3がリリースされてからしば...
このケースはCentOS 7システムに基づいていますDockerの使用経験がある人に適していますLi...
目次新しいユーザーを作成する新規ユーザーを承認する新規ユーザーのSSHキーログインを有効にする他のS...
1. IPアドレスを設定する前に、まずifconfigを使用してネットワークカード情報を表示し、ネッ...
目次1. はじめに2. 解決すべきいくつかの重要な問題3.最後に書く1. はじめに最近、Cocos ...
長い間ブログを書いていませんでした。先週、プロジェクトをテストしたところ、いくつかのバグが見つかりま...
多くの場合、ストアド プロシージャを作成するときに配列がよく使用されますが、MySQL ではストアド...
現在、ほとんどのプロジェクトが Docker 上にデプロイされ始めていますが、デプロイのプロセスはま...
目次1. はじめに2. 出力情報の説明3. netstatの共通パラメータ4. netstatネット...
この記事の例では、セカンダリメニュー効果を実現するためのJSの具体的なコードを参考までに共有していま...
導入:従来の画像検証コードと比較して、スライダー検証コードには次の利点があります。サーバーは検証コー...