vueを使用して登録ページの効果を実現し、vueを使用してSMS認証コードログインを実現します

vueを使用して登録ページの効果を実現し、vueを使用してSMS認証コードログインを実現します

この記事の例では、登録ページの効果を実現するためのVueの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

1. 実施効果図

2. 実装コード

1. ヘッドを実装する

<テンプレート>
  <div class="box">
    <div class="box1">
      <span class="iconfont icon-zuojiantou 戻る" @click="goBack"></span>
    </div>
    <div class="box6">
      <b>携帯電話番号の登録</b>
    </div>
  </div>
</テンプレート>
 
<スクリプト>
エクスポートデフォルト{
  名前: "トップ",
  メソッド: {
    戻る() {
      this.$router.push("/ログイン");
    },
  },
};
</スクリプト>
 
<スタイルスコープ>
.box1 {
  幅: 100%;
  高さ: 0.5rem;
  下部マージン: 0.19rem;
}
 
スパン {
  フォントサイズ: 0.18rem;
  行の高さ: 0.5rem;
  フォントサイズ: 0.2rem;
}
 
。戻る {
  フォントサイズ: 0.25rem;
}
 
.box6 {
  幅: 100%;
  高さ: 0.66rem;
  マージン: 自動;
}
b {
  フォントサイズ: 0.24rem;
  フォントの太さ: 標準;
}
p {
  フォントサイズ: 0.13rem;
  色: グレー;
  上マージン: 0.11rem;
}
</スタイル>

2. 登録コンテンツの実装

<テンプレート>
  <div class="box">
    <div class="box1">
      <div class="phone-container">
        +86
        <入力
          クラス="userphone"
          タイプ=""
          v-model="ユーザー名"
          placeholder="携帯電話番号を入力してください"
        />
      </div>
    </div>
 
    <div class="box2">
      <h3 @click="toSendCode">利用規約に同意して登録する</h3>
    </div>
    <div class="box3">
      <チェックボックスv-model="チェック済み">
        以下の契約書を読み、同意します。
          >Taobaoプラットフォームサービス契約、プライバシーポリシー、法的声明、Alipayサービス契約、Tianyiアカウント認証サービス条件</b
        >
      </チェックボックス>
    </div>
  </div>
</テンプレート>
 
<スクリプト>
「axios」からaxiosをインポートします。
「vue」からVueをインポートします。
「vant」から Checkbox、Toast をインポートします。
 
Vue.use(チェックボックス);
Vue.js でトーストをインポートします。
エクスポートデフォルト{
  名前: "Num",
  データ: 関数 () {
    戻る {
      ユーザー名: "",
      コード: "",
      チェック済み: false、
    };
  },
  メソッド: {
    // 電話番号を確認する checkPhone(phone) {
      reg = /^1[3|4|5|7|8][0-9]{9}$/とします。
      reg.test(phone) を返します。
    },
 
    コード送信() {
      if (this.checked) {
        if (this.checkPhone(this.usernum)) {
          アクシオス({
            url: `/auth/code/?phone=${this.usernum}`,
          }).then((res) => {
            コンソールログ(res);
            (res.status == 200)の場合{
              localStorage.setItem("userPhone", this.usernum);
              Toast("確認コードが正常に送信されました");
              this.$router.push("/inputCode");
            }
          });
        } それ以外 {
          Toast("電話番号を確認してください");
        }
      } それ以外 {
        Toast("まずは利用規約をご確認ください");
      }
    },
  },
};
</スクリプト>
 
<スタイルスコープ>
.box1 {
  幅: 100%;
  高さ: 0.7rem;
}
 
.box1 b {
  上マージン: 0.25rem;
  フォントの太さ: 標準;
}
 
.phone-container {
  幅: 100%;
  パディング: 0.1rem 0;
  下マージン: 0.4rem;
  位置: 相対的;
}
.phone-container > span {
  位置: 絶対;
  フォントサイズ: 0.16rem;
  色: #666;
  トップ:0.21rem;
}
入力{
  境界線: なし;
  アウトライン: なし;
}
 
入力::-webkit-入力プレースホルダー {
  フォントサイズ: 0.2rem;
  色: rgb(216, 214, 214);
}
.userphone {
  表示: ブロック;
  幅: 100%;
  高さ: 0.4rem;
  ボックスのサイズ: 境界線ボックス;
  パディング: 0 0.3rem;
  左パディング: 0.4rem;
  フォントサイズ: 0.2rem;
  ボーダーボトム: 0.01rem 実線 #eee;
}
.box2 {
  幅: 100%;
  高さ: 0.5rem;
  上マージン: 0.2rem;
}
 
.box2 h3 {
  幅: 100%;
  高さ: 0.4rem;
  背景色: 黄色;
  境界線の半径: 0.15rem;
  フォントサイズ: 0.18rem;
  テキスト配置: 中央;
  行の高さ: 0.3rem;
  上マージン: 0.1rem;
  フォントの太さ: 600;
  行の高さ: 0.4rem;
  文字間隔: 0.02rem;
  色: rgba(87, 42, 42, 0.623);
}
 
.box3 {
  幅: 100%;
  高さ: 0.3rem;
  上マージン: 3.4rem;
  フォントサイズ: 0.12rem;
}
 
.box3 b {
  フォントの太さ: 標準;
  色:ディープスカイブルー;
}
</スタイル>

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

以下もご興味があるかもしれません:
  • 検証コードログインメソッドのVue実装例
  • Vue は携帯電話の認証コードによるログインを実装します
  • Vue はグラフィック検証コードログインを実装します
  • Vue は携帯電話番号と確認コードによるログインを実装します (60 秒のカウントダウンは無効)
  • Vue は SMS 認証コードログイン機能を実装します (プロセスの詳細説明)
  • Vue は、携帯電話番号経由で SMS 認証コードログインを送信するためのサンプル コードを実装します。

<<:  CSS でフローティングにより親要素の高さが崩れる問題を解決するいくつかの方法

>>:  HTMLページ作成に関する私の経験の簡単な要約

推薦する

VUEはトークンログイン認証を実装

この記事では、トークンログイン認証を実装するためのVUEの具体的なコードを例として紹介します。具体的...

WeChatミニプログラムの基本チュートリアル:Echartの使用

序文まずは最終的な効果を見てみましょう。私が自分で作った小さなデモです。まずEChartsの公式サイ...

Windows Server 2008 R2 に MySQL 5.7.10 をインストールする手順

MSIインストールパッケージを使用してインストールするご使用のオペレーティング システムに応じて、対...

MySQL 整合性制約の例の詳細な説明

この記事では、MySQL の整合性制約について説明します。ご参考までに、詳細は以下の通りです。メイン...

Mysql の主キーと一意キーの違いのまとめ

主キーとは何ですか?主キーは、テーブル内の各タプル (行) を一意に識別するテーブル内の列です。主キ...

Webフロントエンド開発コース Webフロントエンド開発ツールとは

インターネット技術の発展に伴い、ユーザーはますます Web ページに依存するようになり、Web フロ...

ホワイトボードを踏まないようにするゲームを実装するための HTML+CSS+JS

目次背景1. 思考分析2. ページ構成2.1 HTML レイヤー2.2 CSS レイヤー2.3 JS...

開発環境にUbuntu 16をインストール後の初期設定

オフィスでは、Linux 開発環境として Ubuntu システムが必要です。現在、Ubuntu 16...

フレックスマルチカラムレイアウトで発生する問題と解決策の詳細な説明

フレックス レイアウトは間違いなくシンプルで使いやすいです。レイアウトをよりシンプルかつ高速にします...

JavaScriptはクリックするとランダムなグラフィックを生成します

この記事では、クリックするとランダムグラフィックの生成を実現するJavaScriptの具体的なコード...

バントリストコンポーネントをスクロールしても、スクロールバーの位置は保持されます。

バントリストコンポーネントをスクロールするときに、スクロールバーの位置が保持されます。これは、kee...

Windows 10 の Docker で countly-server を展開して実行するプロセス

私は最近countlyに触れて、慣れてきました。私は、必要に応じてcountlyのクラッシュプラグイ...

ウェブデザイン:大量の素材の正確な配置と使用

3回の暗記により、大量の資材の正確な場所と目的を記憶でき、その使いやすさが向上します。 これは単なる...

MySQLデータベースのQPSとTPSの意味と計算方法

DB ベンチマーク テストを実行する場合、qps と tps はデータベースのパフォーマンスを測定す...

MySQL の同時実行性の問題と解決策の分析

目次1. 背景2. テーブルロックによるクエリの遅延3. オンラインでテーブル構造を変更するとどのよ...