Vue.js を学ぶ際に遭遇する落とし穴

Vue.js を学ぶ際に遭遇する落とし穴

順位は特に決まっていません

最近は生活や愚痴に関するブログばかり投稿しているようです。テクノロジー関係の更新がないと、また怠け者になっていると思われるかもしれません。

よし、じゃあふりを始めます。

クラス void のポイント

これは、ヌル ポインターに似た種類のエラーです。コンソールにエラーは報告されず、見つけるのが非常に困難です。

応答データユーザーアバター

//ユーザーが null の場合、この呼び出しはエラーを報告せず、それ以上実行されません。これは非常にトリッキーです。//アバターを判断したい場合は、次のようにします if (resp.data.user && resp.data.user.avatar) {
 //する...
}

ES6 矢印関数

矢印関数と非矢印関数の間にも大きな違いがある

//通常の無名関数の記述 api()
.then(関数(応答){
 このカウント()
 //これは通常のカウントではなく、未定義になることに注意してください
})


//ES6 矢印関数 api()
.then(応答 => {
 このカウント()
 //ここでは何も問題はありません})

ヴュートファイ

これは、Vue.js 上で実行できる、Google のマテリアル デザイン言語に基づいた UI フレームワークです。

ただ、インストール方法が少し特殊で、プラグインのインストール方法も特殊です。

例えば、vuetifyのダイアログ

'vuetify-dialog' から VuetifyDialog をインポートします。
'./plugins/vuetify' から vuetify をインポートします。

Vue.use(VuetifyDialog, {
 コンテクスト: {
 ヴュートファイ
 }
})

つまり、UI を書くときは、Google 向けにプログラミングする必要があるということです。 (他のバックエンド言語も同様ですが)

vue-cli

新しいプロジェクトを作成する場合、そのプロジェクトは特に大きくありません。

vue-cli を使用して作成することを強くお勧めします。簡単に言えば、これにより b スタイルが向上します。

ナンセンスな話はやめて、絵を見てください

vue プロジェクト名を作成します

ビューUI

vue ui は上記のような視覚化ページを開きます。

次に、vue-cli で作成されたプロジェクトをインポートすると、上の図と同じになります:)

非同期と同期

実は、以前とても馬鹿げた考えを持っていたんです。

ユーザーがフォームを完了すると、すぐにサーバーで検証され、結果が UI 上で更新されます。

ただし、UI を更新するには同期操作が必要です。

私は、axios の非同期操作を同期操作に変える方法を見つけようとし続けました。

以前の jQuery であれば、非常に簡単です。aysnc 属性を変更するだけです。

ただし、リクエストを送信するたびに、ブラウザのコンソールに XHR 同期リクエストは推奨されないというメッセージが表示されます。

なぜでしょうか? ブラウザのページはシングルスレッドであるためです。リクエストが同期されている場合、リクエストごとにページが一定時間停止します。

そこで最終的に、すべてのリクエストを非同期にするための段階的な検証方法に変更しました。

実行と展開

ローカルで開発する場合

serve (または一部のプロジェクトでは dev) を実行すると、ポート番号が開き、ユーザー インターフェイスにアクセスしてほぼリアルタイムで UI を調整できるようになります。

オンラインでデプロイする場合は、まずビルドを実行して、出力ディレクトリに静的ファイルを生成する必要があります。

これらのファイルを次のようにサーバーにデプロイします。

  • nginx
  • キャディー

ここで私が強くお勧めするのは、Golang をベースに開発されたサーバーである caddy です。軽量で導入でき、管理 API が付属しています。Http2 を非常によくサポートし、http3 もサポートしています。

ヒント

ここで紹介しているのは、私が最近始めたプロジェクトの一部です。今後の開発では、さらに多くの問題に遭遇するでしょう。
たとえば、ページ間の更新などです。

それで、もうすぐ次の章が始まります。

これが役に立つことを願っています。

以上が、Vue.js を学習する際に陥りやすい落とし穴の詳細です。Vue.js を学習する際に陥りやすい落とし穴の詳細については、123WORDPRESS.COM 内の他の関連記事もぜひご覧ください。

以下もご興味があるかもしれません:
  • Vue.js フロントエンドフレームワークにおけるイベント処理の概要
  • Vue.js ベースの iView UI フレームワークの非エンジニアリング実践記録 (推奨)
  • Vue.js ユニバーサル アプリケーション フレームワーク - Nuxt.js 入門チュートリアル
  • Vue の詳細な入門ノート
  • Vueのフロントエンドとバックエンドのデータのやり取りと表示を理解する方法
  • Vueの使用に関する深い理解
  • Emberjs による axios 経由でのファイルダウンロード方法
  • Emberjs を使ってシンプルな Todo アプリケーションを作成する
  • Ember.js と Vue.js の詳細な比較

<<:  データベースアカウントのパスワード暗号化の詳細な説明と例

>>:  MySQL での正規表現置換のための replace と regexp の使用法の分析

推薦する

要素UIテーブルはドロップダウンフィルタリング機能を実現します

この記事の例では、要素UIテーブルにドロップダウンフィルタリングを実装するための具体的なコードを参考...

独立した IP を介して Windows コンテナ イントラネットの Docker に直接アクセスする方法

Docker では、ポート マッピングを使用して、Docker コンテナーのサービスをホスト マシン...

Mysql トランザクション分離レベルの読み取りコミットの詳細な説明

MySQL トランザクション分離レベルを表示する mysql> '%isolation...

ウェブデザインの教育または学習プログラム

セクションコース内容営業時間1 ウェブデザインの概要2 2 HTML 基本タグとフォーマットタグ 2...

Kubernetes YAMLファイルの使用

目次01 YAMLファイルの概要YAML---キー値型YAML---リスト型02 K8Sにおけるマス...

Vue の get リクエストと post リクエストの違いのまとめ

このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...

CSS ボックスモデル内のパディングと略語の詳細な説明

上図のように、パディング値は時計回り(右上、右下)の複合属性であり、パディングの内側の余白がボックス...

Dockerコンテナ内の設定ファイルの変更の実装

1. コンテナに入るdocker run [オプション] イメージ名 [起動コンテナに渡されるコマン...

Tomcat で server.xml と content.xml を変更した後の自動復元の問題の解決方法

設定ファイルを server.xml と content.xml に書き込みます。サーバーを再起動す...

Ubuntu 20.04にvncserverをインストールする方法

Ubuntu 20.04は2020年4月に正式にリリースされました。本日、ミラーシステムを正式にイン...

jQueryは広告の表示と非表示のアニメーションを実装します

数秒後に広告が表示されて消えることがよくあります。この機能を実装するには、JQuery フレームワー...

Linux 上のカラフルな猫

Linux システムを使用したことがある友人なら、 catコマンドを使用したことがあるはずです。もち...

画像をラベルとして使用すると、IE では for 属性が機能しません。

例えば:コードをコピーコードは次のとおりです。 <input type="check...

HTML で点線の境界線を設定する方法

CSSスタイルとHTMLタグ要素を使用するさまざまな HTML タグに点線の境界線を追加するために、...

Layuiテーブル行のデータを動的に編集する

目次序文スタイル機能説明初期化コードイベントリスナーの追加リスナーツールバーモニターテーブル行ツール...