プロジェクトシナリオ:Dark Horse Vueプロジェクト管理の実践、製品分類の取得、拡張バーのタブページでのデータ属性の変更 問題の説明:+ 新しいタグ タブをクリックすると、追加する属性を入力するための入力ボックスがポップアップ表示されます。 その結果、クリックしてもすぐにレンダリングされない。 非同期getParametersList() { this.cat_id = this.currentSelect[this.currentSelect.length - 1]; const { data: res } = this.$http.get( を待ちます `categories/${this.cat_id}/attributes`、 { パラメータ: { sel: "many" } } ); this.paramasData = res.data; res.data.forEach(アイテム => { item.attr_vals = item.attr_vals ? item.attr_vals.split(" "): []; //テキスト ボックス項目の表示と非表示を制御します。inputVisible=false //テキストボックスに入力された値 item.inputValue='' コンソール.log(アイテム) }); コンソールにログ出力します。 }, //ボタンをクリックしてダイアログボックスを表示します //ボタンをクリックしてテキスト入力ボックスを表示します showInput(row) { 行.inputVisible = true // テキスト ボックスが自動的にフォーカスを取得するようにします // $nextTick メソッドの機能は、ページ上の要素が再レンダリングされた後にのみ、コールバック関数でコードを指定することです // this.$nextTick((_) => { // this.$refs.saveTagInput.$refs.input.focus() // }) }, 原因分析:この記事を参照 https://www.jb51.net/article/222379.htm パラメータリストを取得した後、すぐに双方向に値をバインドし、各列のオブジェクトに inputvisible コントロール属性を追加したことが判明しました。その結果、後でボタンがクリックされたときに、入力ボックスの v-if で各オブジェクトの Inputvisible をリアルタイムにレンダリングすることができませんでした。 双方向バインディングの後、配列内のオブジェクトのプロパティ値が追加されます。Vue では、その後に配列に追加されたオブジェクトの getter 関数と setter 関数をバインドする方法がないため、リアルタイム レンダリングを実現できません。 解決:データを変更したら、data 内のデータに値を割り当てます。 今すぐ 非同期getParametersList() { this.cat_id = this.currentSelect[this.currentSelect.length - 1]; const { data: res } = this.$http.get( を待ちます `categories/${this.cat_id}/attributes`、 { パラメータ: { sel: "many" } } ); res.data.forEach(アイテム => { item.attr_vals = item.attr_vals ? item.attr_vals.split(" "): []; //テキスト ボックス項目の表示と非表示を制御します。inputVisible=false //テキストボックスに入力された値 item.inputValue='' コンソール.log(アイテム) }); this.paramasData = res.data; コンソールにログ出力します。 }, これで、vue バインディング オブジェクト、配列データは動的にレンダリングできないという記事は終わりです。vue バインディング オブジェクト、配列データは動的にレンダリングできないという関連の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL からエクスポートされた scv ファイル内の文字化けやジャンプ行の問題をすばやく解決します
>>: Linux での tcpdump コマンドの詳細な分析と使用方法
MySQL 8.0.3がリリースされます。新機能を見てみましょうMySQL 8.0.3 は RC ...
この記事では、宝くじターンテーブルを描画するJS + Canvasの具体的なコードを参考までに共有し...
目次ミューテーションオブザーバーAPI特徴インターセクションオブザーバーAPI例えば画像の遅延読み込...
SQL UNIQUE制約UNIQUE 制約は、データベース テーブル内の各レコードを一意に識別します...
MySQL ウィンドウ関数の紹介MySQL は MySQL 8.0 以降、ウィンドウ関数をサポートし...
この記事では、例を使用して、データベースを削除せずに MySQL 内のすべてのテーブルをすばやく削除...
時々、素敵なスクロールバー効果を見るのは楽しいものです。ここでは、CSSを使用してそれを実現する方法...
まず、Navicat for MySQL をダウンロードしてインストールする必要があります。正規版の...
JavaScript では、要素の removeAttribute() メソッドを使用して、指定され...
PS: ここではPHPStudy2016を使用しています1. 変更中にMySQLを停止する2. my...
データのバックアップと復元パート2は次のとおりです基本的な概念:バックアップ、現在のデータまたはレコ...
<br />適度に画像を追加すると、Web ページがより美しくなります。 画像タグ &l...
導入1.<iframe> タグ: iframe は、ページ内に内部フレームを生成するイン...
1. デフォルトでインストールされているMySQLの文字セットを確認するmysql> '...
目次1. 場所/マッチング2. 場所 = / 一致Locaitonには、完全一致(=)、プレフィック...