Vueデータ割り当て問題の解決

Vueデータ割り当て問題の解決

私が長い間遭遇してきた問題を要約してみましょう。

プロジェクトでは、フロントエンドをレンダリングするためにバックグラウンドデータが必要です。Vue と統合された Axios が使用されます。ページコンポーネントがマウントされた後、Vue のフック関数を使用してバックグラウンドに get リクエストを送信し、返されたデータを data() で定義された属性に割り当てます。

実行後、フロントエンドはエラーを報告します。

理由:

リクエストが正常に実行された後、コールバック関数の内容が実行されます。コールバック関数は他の関数内にあり、どのオブジェクトにもバインドされておらず、未定義です。

解決:

1) Vueオブジェクトを指すこれを外部メソッドで定義されたプロパティに割り当て、内部メソッドでそのプロパティを使用します。

2) 矢印関数の使用

補足: vueデータ内のデータ間の呼び出しの未定義問題を解決する

解決:

解決策はありません、これはまったくそう呼ぶことはできません。

data 関数内の this は VueComponent を指していますが (理解: data 内のデータは this を使用して props 内のデータを呼び出すことができます)、data 内の別の属性を呼び出す場合、data 内のデータはまだ解析されていません。これは、{} オブジェクトを返すときに、それらの中のすべてのデータが一緒にレンダリングおよび解析されるため、未定義の問題が発生するためです。

(上記はあくまでも私の個人的な理解です。間違いがあればコメントして訂正してください。)

マウントされたライフサイクルで割り当て操作を完了することを選択します

エクスポートデフォルト{
 データ(){
  戻る {
  名:'111',
  姓:'222',
  フルネーム:''
  }
 },
 マウントされた(){
 this.fullName = this.firstName + '' + this.lastName;
 } 
 }

結果を表示:

もちろん、fullName をデータ内で定義する必要がない場合は、計算プロパティ内で定義するのが賢明です。

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • Vueで入力を編集不可に設定する方法
  • Vueが入力値を取得する問題の解決策
  • Vue データ オブジェクトの無効な (変更されていない) 再割り当ての解決策
  • Vueの入力が割り当てられた後は、変更したり解決したりすることができなくなります。

<<:  Linuxロスレス展開方法

>>:  MySQL はパスワード強度の検証をオフにします

推薦する

HTML の基本 - CSS スタイルシート、スタイル属性、フォーマット、レイアウトの詳細

1.位置:固定一部の Web サイトの右下隅にあるポップアップ ウィンドウなどの、ブラウザーを基準と...

CentOS7仮想マシンで固定IPアドレスを設定する方法

私の開発環境は、VMWare 仮想マシンに CentOS をインストールし、ホスト ファイルにインタ...

CSS3 transition-delay属性のデフォルト値が単位なしの0であり無効である問題を解決します

今日は、CSS3 の transition-delay 属性のデフォルト値 0 に単位がないのは無効...

LayUI+Shiroは動的なメニューを実装し、メニュー拡張の例を記憶します

目次1. Maven 依存関係2. メニュー関連クラス1. メインメニュー2. サブメニュー3. S...

スキニングを実現するネイティブJavaScript

ネイティブJavaScriptでスキニングを実装するための具体的なコードは参考までに。具体的な内容は...

便利でシンプルなMySQL関数10個

関数0. 現在の時刻を表示するコマンド: select now()。機能: 現在の時刻を表示します。...

CSS3 を使用して入力複数選択ボックスのスタイルをカスタマイズする例

原則: まず入力要素を非表示にし、次に CSS を使用してラベル要素のスタイルを設定します (他の要...

CSS で中空マスク レイヤーを実装するサンプル コード

この記事の内容: ページ中空マスクレイヤー、ページ中空マスクガイドレイヤー、画像中空マスク通常のマス...

DockerコンテナでJupyterノートブックを設定する方法

Jupyter ノートブックは、主に Python コードの記述、より具体的にはディープラーニング開...

40 CSS/JSスタイルと機能的な技術処理

1-ドロップダウン選択ボックスのスタイル設定 - ドロップダウン リストを変更します。 2- <...

Jenkins を使用した Vue プロジェクトのワンクリック パッケージングと公開の実装

目次Jenkinsのインストールインストールポート番号を変更します(デフォルトのポートは8080です...

HTML tbody の使用

構造化テーブル (IExplore のみ) 1) 行ごとにグループ化<thead> .....

Navicat を仮想マシン MySQL に接続する際によくあるエラーと解決策

質問1 解決するサービスを開始します: service mysqld start; /sbin/ip...

NodeJSとブラウザにおけるこのキーワードの違い

序文JavaScript を学習した人なら誰でも、さまざまな環境で this がどこを指すかという問...

JavaScript を使用してページ要素のオフセットを取得/計算する方法

質問コントロールをクリックすると、コントロールの下にフローティング レイヤーが表示されます。通常の方...