Vueはユーザーログイン切り替えを実装します

Vueはユーザーログイン切り替えを実装します

この記事では、ユーザーのログイン切り替えを実現するためのVueの具体的なコードを例として紹介します。具体的な内容は以下のとおりです。

切り替えには問題がある

コード

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
</head>
<本文>
    <div id="アプリ">
        <span v-if="isUser">
            <label for="username">ユーザーアカウント</label>
            <input type="text" id="ユーザー名" placeholder="ユーザーアカウント">
        </span>
        <span v-else>
            <label for="email">ユーザー メールボックス</label>
            <input type="text" id="email" placeholder="ユーザーのメールアドレス">
        </span>
        <button @click="isUser = !isUser">スイッチタイプ</button>
    </div>
    <script src="../js/vue.js"></script>
    <スクリプト>
        constアプリ = 新しいVue({
            el: '#app',
            データ: {
                ユーザー: true
            }
        })

    </スクリプト>
</本文>
</html>

エフェクト表示

問題

  • コンテンツを入力中にタイプを切り替えると、テキストには以前に入力したコンテンツが引き続き表示されます。
  • しかし、論理的に言えば、別の入力要素に切り替える必要があります。
  • 他の入力要素には、何もコンテンツを入力しませんでした。

なぜこの問題が発生するのでしょうか?

これは、Vue がDOM をレンダリングするときに、パフォーマンス上の理由から、新しい要素を作成するのではなく、既存の要素を可能な限り再利用するためです。
上記の場合、Vue は元の入力要素が使用されなくなり、 else の入力として直接使用されていることを検出します。

解決

  • 対応する入力にキーを追加する
  • キーが異なることを確認してください

完璧版ログイン例

入力に異なるキーを追加する

コード

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>タイトル</title>
</head>
<本文>
    <div id="アプリ">
        <span v-if="isUser">
            <label for="username">ユーザーアカウント</label>
            <input type="text" id="ユーザー名" placeholder="ユーザーアカウント" key="ユーザー名">
        </span>
        <span v-else>
            <label for="email">ユーザー メールボックス</label>
            <input type="text" id="email" placeholder="ユーザーのメールアドレス" key="email">
        </span>
        <button @click="isUser = !isUser">スイッチタイプ</button>
    </div>
    <script src="../js/vue.js"></script>
    <スクリプト>
        constアプリ = 新しいVue({
            el: '#app',
            データ: {
                ユーザー: true
            }
        })

    </スクリプト>
</本文>
</html>

エフェクト表示

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vueは長時間操作していないユーザー向けに自動ログイン・ログアウト機能を実装
  • Vueはユーザーログインモードの切り替え機能を実装します
  • Django RESTフレームワークvueはユーザーログインの詳細を実装します
  • VueプロジェクトはlocalStorage+Vuexを使用してユーザーのログイン情報を保存します
  • vue-router beforeEach ジャンプルートでユーザーのログイン状態を確認する
  • Vue が Cookie を通じてユーザーのログイン情報を取得する方法の詳細な説明
  • vue-router beforEachを使用して、ユーザーログインジャンプルートフィルタリングを判断する機能を実装する
  • vueルーティングジャンプ時にユーザーがログインしているか判断する実装
  • Vue でユーザーのログイン状態を保存するためのサンプルコード
  • Vue.jsは、ユーザーコメント、ログイン、登録、情報変更機能を実装します。

<<:  VirtualBox仮想マシンがNATモードで外部ネットワークに接続できない問題の解決策

>>:  VirtualBox でのホストオンリー + NAT モードのネットワーク構成

推薦する

MySQLの場合の使用例分析

まず、データベース テーブルを作成します。 テーブル `t_demo` を作成します ( `id` ...

CSS で点線の境界線のスクロール効果を実装するサンプルコード

マウスをある領域の上に置くと、その領域に点線の境界線と線のアニメーションが表示されるというクールな効...

Docker を使用して開発環境を構築する方法 (Windows および Mac)

目次1. Dockerを使用する利点2. Dockerをインストールする1) LinuxにDocke...

MySQL データ型の選択原則

目次小さいけれど美しいシンプルにNULL値を避けるデータタイプを選択する手順データ型の紹介1. 文字...

vue で wangEditor を使用する方法と、データをエコーし​​てフォーカスを取得する方法

バックグラウンド管理プロジェクトを行う際には、リッチテキストエディタがよく使用されます。ここでは、非...

MySQL 5.7.27 winx64 のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 5.7.27 winx64のインストールと設定方法を参考までに紹介します。...

CentOS7 で jar アプリケーションの起動を設定する方法

プロジェクトの展開中に遭遇した落とし穴Zhihudemo を展開する際、Jenkins などの自動展...

ウェブページでコンテンツを引用するためによく使われるHTMLタグをマスターする

長い引用には blockquote を、短い引用には q を、参考文献には cite を使用します。...

HTML ページジャンプコード

次のコードを index.html などのデフォルトのホームページ ファイルとして保存し、ルート デ...

Linux で nginx を起動および再起動する方法

Nginx (エンジン x) は、IMAP/POP3/SMTP サービスも提供する高性能 HTTP ...

Dockerコンテナでは、イメージを簡素化してサイズを縮小する方法を詳しく説明しています

目次1.画像レイヤーの数を減らす1. 命令の統合2. 多段階ビルド3. スクワッシュ機能を有効にする...

Vue で webSocket を使用してリアルタイムの天気を更新する方法

目次序文webSocket の操作と例について:ウェブソケット1. webSocketについて2. ...

CSS3 は、跳ねるボール効果を実現する Web アニメーションを作成します。

基本的な準備この実装には、クラス名が ball である単純な div が必要です。 HTMLコード:...

JavaScriptで継承を実装するいくつかの方法

目次構造継承(callで実装)プロトタイプチェーン継承(プロトタイプチェーンの助けを借りて実装)複合...