WeChat アプレットのシンプルなログイン ページの実装 (ソース コード付き)

WeChat アプレットのシンプルなログイン ページの実装 (ソース コード付き)

1. 上の写真

2. ユーザーが存在しない

3. コードをアップロードする

3.1ログイン.wxml

<view class="v1" style="height:{{clientHeight?clientHeight+'px':'auto'}}">
 
 <!-- v2 親コンテナ子ビューは絶対レイアウトを使用します -->
   <ビュークラス="v2">
     <view class="dltext" style="width: 232rpx; height: 92rpx; display: block; box-sizing: border-box; left: 0rpx; top: -2rpx">ログイン</view>
  
     <!-- 電話番号-->
     <view class="phoneCs">
       <!-- <image src="/images/zhang.png" class="ph"></image> -->
       <input placeholder="アカウント番号を入力してください" type="number" bindinput="content" />
     </ビュー>
     <!-- パスワード -->
     <view class=passwordCs">
       <!-- <image src="/images/mi.png" class="ps"></image> -->
       <input placeholder="パスワードを入力してください" type="password" bindinput="password" />
     </ビュー>
     <!-- ログイン ボタン -->
     <view class="denglu">
       <button class="btn-dl" type="primary" bindtap="goadmin">ログイン</button>
     </ビュー>
   </ビュー>
 </ビュー>

3.2ログイン.css

/* pages/login/login.wxss *//* 最大の親要素*/
.v1{
  表示: ブロック;
  位置:絶対;
  幅: 100%;
  背景色: rgb(250, 248, 248);
}
/* 白い部分 */
.v1 .v2{
  位置: 相対的;
  上マージン: 150rpx;
  左: 100rpx; 
  幅: 545rpx;
  高さ: 600rpx;
  背景色: rgb(250, 248, 248);
  境界線の半径: 50rpx;
}
/* 白い領域にログインテキスト*/
.v1 .v2 .dltext{
  上マージン: 50rpx;
  位置: 絶対;
  左マージン:50rpx;
  幅: 150rpx;
  高さ: 100rpx;
  フォントサイズ: 60rpx;
  フォントファミリー: Helvetica;
  色: #000000;
  行の高さ: 100rpx;
  文字間隔: 2rpx;
}
/* 携帯電話の画像 + 入力ボックス + 下線付き親コンテナビュー */
.v1 .v2 .phoneCs{
  上マージン: 200rpx;
  左マージン: 25rpx;
  位置: 絶対;
  ディスプレイ: フレックス;
  幅:480rpx;
  高さ: 90rpx;
  背景色: 白;
  
}
/* 携帯電話アイコン */
.v1 .v2 .phoneCs .ph{
  上マージン: 5rpx;
  左マージン: 30rpx;
  幅: 55rpx;
  高さ: 55rpx;
}
/* 電話番号入力ボックス*/
.v1 .v2 .phoneCs 入力{
  幅: 400rpx;
  フォントサイズ: 30rpx;
  上マージン: 25rpx;
  左マージン: 30rpx;
}
/* パスワードアイコン + 入力ボックス + 小さな目のアイコン + 下線付き親コンテナビュー */
.v1 .v2 .passwordCs{
  上マージン: 350rpx;
  左マージン: 25rpx;
  位置: 絶対;
  ディスプレイ: フレックス;
  幅:480rpx;
  高さ: 90rpx;
  背景色: 白;

}
/* パスワードアイコン */
.v1 .v2 .passwordCs .ps{
  上マージン: 5rpx;
  左マージン: 30rpx;
  幅: 55rpx;
  高さ: 55rpx;
}
/* 目のアイコン */
.v1 .v2 .passwordCs .eye{
  上マージン: 5rpx;
  左マージン: 65rpx;
  幅: 55rpx;
  高さ: 55rpx;
}
/* パスワード入力ボックス*/
.v1 .v2 .passwordCs 入力{
  幅: 400rpx;
  フォントサイズ: 30rpx;
  上マージン: 25rpx;
  左マージン: 30rpx;
}
/* ログインボタンコンテナビュー */
.v1 .v2 .denglu{
  幅: 480rpx;
  高さ: 80rpx;
  位置: 絶対;
  上マージン:515rpx;
  左マージン:25rpx;
  
}
/* ログインボタン */
.v1 .v2 .denglu ボタン{
  パディング: 0rpx;
  行の高さ: 70rpx;
  フォントサイズ: 30rpx;
  幅: 100%;
  高さ: 100%;
  境界線の半径: 5rpx;
}

3.3ログイン.js

//index.js
//アプリケーションインスタンスを取得する const app = getApp()
 ユーザー名=''
 パスワード=''
ページ({
  データ: {
    ユーザー名: ''、
    パスワード: ''、
    クライアントの高さ:''
  },
  オンロード(){
    var それ=これ
    wx.getSystemInfo({ 
      成功: 関数 (res) { 
        コンソールログ(res.windowHeight)
          that.setData({ 
              クライアントの高さ:res.windowHeight
        }); 
      } 
    }) 
  },
  //プロトコル goxieyi(){
   wx.navigateTo({
     url: '/pages/oppoint/oppoint',
   })
  },
  //入力コンテンツを取得する content(e){
    ユーザー名=e.detail.value
  },
  パスワード(e){
    パスワード=e.detail.value
  },
  //ログインイベント goadmin(){
    let flag = false // アカウントが存在するかどうかを示します。false は初期値です。if (username=='')
    {
      wx.showToast({
        アイコン:'なし',
        タイトル: 「アカウントは空にできません」
      })
    }それ以外の場合(パスワード==''){
      wx.showToast({
        アイコン:'なし',
        タイトル: 「パスワードは空欄にできません」
      })
    }それ以外{
      wx.cloud.database().collection('adminShop')
      。得る({
        成功:(res)=>{
          コンソールログ(res.data)
          admin = res.data とします
          for (let i = 0; i < admin.length; i++) { //データベースオブジェクトコレクションを走査します if (username === admin[i].username) { //アカウントが既に存在します flag=true;
              if (password !== admin[i].password) { //パスワードが正しいかどうかを判断します wx.showToast({ //パスワードエラー情報を表示します title: 'パスワードが間違っています!!',
                  アイコン: 'エラー'、
                  所要時間: 2500
                });
               壊す;
              } それ以外 {
                wx.showToast({ //ログイン成功情報を表示 title: 'ログイン成功!!',
                  アイコン: '成功'、
                  所要時間: 2500
                })
                フラグ=true;
                wx.setStorageSync('admin', パスワード)
               wx.navigateTo({
                 URL: '/pages/admin/admin',
               })
                壊す;
              }
            }
          };
          if(flag==false)//データを走査した結果、そのようなアカウントは存在しないことが判明しました{
            wx.showToast({
              タイトル: 「このユーザーは存在しません」
              アイコン: 'エラー'、
              所要時間: 2500
            })
          }
        }
      })
    }
  },
})

WeChatアプレットのシンプルログインページ(ソースコード付き)に関するこの記事はこれで終わりです。WeChatアプレットのシンプルログインページの関連コンテンツについては、123WORDPRESS.COMの以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • WeChatアプレットがログインページを実装
  • JSF は WeChat アプレット用のシンプルなログイン ページを実装します (ソース コード付き)
  • WeChatアプレットがログインインターフェースを実装
  • WeChatミニプログラム実践:ログインページ制作(5)
  • WeChatアプレットのローカルストレージとログインページの処理例の詳細な説明
  • WeChat アプレット ログイン インターフェースの例

<<:  Dockerでのpython3.8イメージのインストールについて

>>:  jQuery を使用して、iframe 下の無効なページ アンカー ポイントの問題を修正する

推薦する

Vue3は現在のルーティングアドレスを取得します

正解useRouterの使用: // ルーターパス: "/user/:uid" ...

リモート Linux システムでポートが開いているかどうかを確認する 3 つの方法

これは、Linux 管理者だけでなく、私たち全員にとって非常に重要なトピックです。つまり、IT イン...

JavaScriptのアンチシェイクとスロットリングとは

目次1. 関数デバウンス1. 画像安定化とは何ですか? 2. 関数のスロットリング2.1 タイマーの...

MySQL クイックデータ比較テクニック

MySQL の運用と保守において、R&D の同僚が 2 つの異なるインスタンスのデータを比較...

Linux echo テキスト処理コマンドの使用法と例

Linux ヘルプ ドキュメントでの echo の説明は、Python や Java などのプログラ...

HTML における br と br/ の違い

スタックフローからの回答:単に<br>だけで十分です。その他の形式は、XHTML との互...

Apache ソースコードのインストールと仮想ホストの設定に関する詳細なチュートリアル

ソースからApacheをインストールする1. Apacheソースコードをアップロードして必要なソフト...

Linux ドメイン ネーム サービス DNS 設定方法

DNSとはDNS の正式名称は Domain Name System で、ドメイン名解決システムを意...

VUE+Express+MongoDBのフロントエンドとバックエンドの分離によるノートウォールの実現

付箋紙の壁シリーズを実現しようと思っています。シンプルなものはシンプル、複雑なものは多機能です。開発...

CSS カウンターとコンテンツの概要

コンテンツ プロパティは CSS 2.1 で導入され、:before および :after 疑似要素...

単一のdivの正多角形変換を実現する純粋なCSS

前回の記事では、beforeとafterの擬似要素を使用してMaterial Designスタイルの...

Vueはシンプルなタイマーコンポーネントを実装します

プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避...

Vue で className として空の文字列を使用することはなぜ推奨されないのですか?

目次空の文字列 '' と null を比較するケース1: 空の文字列を使用する &#...

テーブル適応とオーバーフローのいくつかの設定の詳細な説明

1. テーブル リセットの 2 つのプロパティ: ①border-collapse: collaps...

Nginx設定ファイルの詳細な説明

Nginx の主な設定ファイルは nginx.conf で、グローバル ブロック、イベント ブロック...