基于uniapp开发 微信小程序登陆页面一

这篇具有很好参考价值的文章主要介绍了基于uniapp开发 微信小程序登陆页面一。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 此微信登陆页面是参考uniapp开发文档 uniapp一键登录和button组件中的@getphonenumber方法

代码展示

<template>
  <view class="login-container">
    <button
      class="btn-login"
      open-type="getPhoneNumber"
      @getphonenumber="handleLogin"
    >
      第一步: 手机快捷登陆
    </button>
    <view class="tips-text" @click="$navTo('pages/index/index')">
      暂不登陆
    </view>
  </view>
</template>

<script>
import store from '@/store'
export default {
  data() {
    return {
      // 微信小程序登录凭证 (code)
      // 提交到后端,用于换取openid
      code: '',
      isVerify: true,
    }
  },
  created() {
    // 获取code
    this.getCode()
  },

  methods: {
    // 获取手机code
    getCode() {
      return new Promise((resolve, reject) => {
        uni.login({
          provider: 'weixin',
          success: (res) => {
            resolve(res.code)
          },
          fail: reject,
        })
      })
    },

    async handleLogin(e) {
      const app = this
      if (e.detail.errMsg == 'getPhoneNumber:ok') {
        console.log('code', await this.getCode())
        console.log('mobile', e.detail)
        // 提交到后端
        store
          .dispatch('BindMobile', e.detail)
          .then((result) => {
            console.log('result:', result)
            // 显示登录成功
            app.$toast(result.msg)
            // 跳转回原页面
            setTimeout(() => {
              app.onNavigateBack()
            }, 500)
          })
          .catch((err) => {
            console.log(err)
          })
      }
    },
    async onAuthSuccess(userInfo) {
      const app = this
      let params = {
        code: await app.getCode(),
        raw_data: userInfo,
      }
      console.log(params)
      // 提交到后端
      store
        .dispatch('MpWxLogin', params)
        .then((result) => {
          console.log(result)
          if (result.data.userinfo.mobile) {
            // 显示登录成功
            app.$toast(result.msg)
            // 跳转回原页面
            setTimeout(() => {
              app.onNavigateBack()
            }, 500)
          } else {
            app.isVerify = false
          }
        })
        .catch((err) => {
          console.log(err)
        })
    },
  },
}
</script>

<style lang="scss" scoped>
.login-container {
  // 登录盒子的样式
  height: 850rpx;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: 255, 85, 57;
  position: relative;
  overflow: hidden;
  text-align: center;

  // 绘制登录盒子底部的半椭圆造型
  &::after {
    content: ' ';
    display: block;
    position: absolute;
    width: 100%;
    height: 40px;
    left: 0;
    bottom: 0;
    background-color: white;
    border-radius: 100%;
    transform: translateY(50%);
  }

  // 登录按钮的样式
  .btn-login {
    width: 60%;
    border-radius: 100px;
    padding: 10px;
    margin: 20px 0;
    background-color: #ff5539;
    color: white;
  }

  // 按钮下方提示消息的样式
  .tips-text {
    font-size: 14px;
    color: gray;
  }
}
</style>

 成品展示

uniapp微信小程序模板,uniapp-微信小程序,uniapp,微信小程序,小程序

 文章来源地址https://www.toymoban.com/news/detail-520910.html

 

 

到了这里,关于基于uniapp开发 微信小程序登陆页面一的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】基于Java+uniapp框架开发的全开源微信小程序商城系统

    基于Java+uniapp框架开发的全开源微信小程序商城系统,前端采用目前主流的uniapp框架开发,后端采用Java语言开发,前后端代码全部开源,减少重复造轮子,支持小程序商城秒杀、优惠券、多商户、直播卖货、分销等功能,帮助商家快速搭建一个属于自己的微信小程序商城。

    2024年02月16日
    浏览(62)
  • 微信小程序-关于我们页面模板

    JS WXML WXSS

    2024年02月16日
    浏览(57)
  • uniapp小程序开发|基于微信小程序实现小型比赛自动编排系统

    作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容:Java项目、Python项目、前端项目、人工智能与大数据、简历模板、学习资料、面试题库

    2024年02月11日
    浏览(49)
  • 基于Android水果蔬菜果蔬到家商城系统 微信小程序uniAPP的开发与实现

    果蔬到家是商家针对用户必不可少的一个部分。在商铺发展的整个过程中,果蔬到家担负着最重要的角色。为满足如今日益复杂的管理需求,各类果蔬到家程序也在不断改进。本课题所设计的springboot基于HBuilder X的果蔬到家APP,使用SpringBoot框架,HBuilder X技术进行开发,它的优

    2024年02月11日
    浏览(50)
  • uniapp微信小程序生成分享海报(模板自取)

    uniapp微信小程序生成分享海报模板 1、模板自取 2、可自行按需求更改调整 3、效果图如下: 生成前  ----- 生成后的图 需知: 博主的实现效果是先把需要生成的图片排版成静态页面,再点击生成海报-----通过canvas生成海报!!!            不需要这样效果话可以省略第一步

    2024年02月14日
    浏览(54)
  • uniapp 微信小程序:页面+组件的生命周期顺序

    这个uniapp的微信小程序项目使用的是 VUE2 首页只提供了一个跳转按钮。 虽然文档中将页面与组件的生命周期分开罗列,但是我们在页面和组件中所有的生命周期函数都加上,看下效果: uniap 页面生命周期 uniapp 组件生命周期

    2024年02月15日
    浏览(40)
  • 微信小程序之WXSS模板样式、页面配置(.json)和网络数据请求

    学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需写作干货注入能量… 热爱写作,愿意让自己成为更好

    2024年01月24日
    浏览(61)
  • uniapp微信小程序中跳转页面的方法

    在 UniApp 中,有多种方法可以实现页面跳转,以下是其中几种常用的方法及其区别: uni.navigateTo : 使用该方法进行页面跳转时,会关闭当前页面,跳转到指定的页面。 可以在目标页面中获取传递的数据,通过  data-url  或  data-object  传递。 通常用于跳转到新页面并关闭当前

    2024年02月03日
    浏览(50)
  • uniapp,转微信小程序,获取当前页面的 路由、路由参数

    uniapp 获取当前路由信息跟 vue 不同,它没有 route 对象。 uniapp 转成小程序后是这样的 当前页面展示的路由信息就是上一条中获取到的 pages 的最后一条路由,即 它的内容是: 当前路由的参数 在 currentRoute.options 中 比如 index?type=diarydiaryid=123 的 options 就是 而 当前页面的完整路

    2024年02月14日
    浏览(89)
  • uniapp微信小程序切换到tabber页面没有自动刷新

    前言 通过uni.switchTab跳转到tabber页面比如个人中心页面,更新的数据没有刷新。导致页面的数据还是修改之前的 解决方法 在uni.switchTab()加入回调函数; uni.switchTab成功跳转后调用success,此时可以拿到跳转后页面的page对象,从而调用页面onLoad方法重载页面。 或者 两种方法只是

    2024年02月11日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包