前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版

这篇具有很好参考价值的文章主要介绍了前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版, 请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=13221

效果图如下:

前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版

前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版文章来源地址https://www.toymoban.com/news/detail-501905.html

实现代码如下:

cc-selectBox

使用方法


<!-- select-arr:选择数组 nowindex:当前选择序列 @change:切换选择事件  -->

<cc-selectBox :select-arr="select" :nowindex="nowindex" @change="turntap"></cc-selectBox>

  


HTML代码实现部分


<template>

    <view>

        <view class="page">

<!-- select-arr:选择数组 nowindex:当前选择序列 @change:切换选择事件  -->

<cc-selectBox :select-arr="select" :nowindex="nowindex" @change="turntap"></cc-selectBox>

  


            <view class="tip-box">

                <view class="left">

                    <view class="title">Hello, 尊敬的用户 </view>

                    <view class="subtext">登录注册解锁更多精彩内容</view>

                </view>

                <image lazyLoad class="tip-img" src="https://cdn.pixabay.com/photo/2014/02/17/10/20/statue-of-liberty-267948_1280.jpg"></image>

            </view>

            <view class="form-mes" v-if="nowindex != 1">

                <view class="input-item">

                    <view class="num">+86</view>

                    <input

                        @blur="lossstyle"

                        @focus="changestyle"

                        @input="bindpancode"

                        class="item"

                        data-inputNum="0"

                        maxlength="11"

                        placeholder="手机号(新号码将自动注册)"

                        placeholderClass="placeholder"

                        type="number"

                    />

                </view>

                <view class="input-item">

                    <input

                        @blur="lossstyle"

                        @focus="changestyle"

                        @input="pushcode"

                        class="item"

                        data-inputNum="1"

                        maxlength="6"

                        placeholder="请输入验证码"

                        placeholderClass="placeholder"

                        type="number"

                    />

                    <view @tap.stop.prevent="getshortmes" :class="'code-btn ' + (getcode ? 'active' : '') + ' ptp_exposure'" data-ptpid="0a55-1480-8c29-d6e1">

                        {{ getcodemes }}

                    </view>

                </view>

                <view @tap="bid" class="logoin submit ptp_exposure" data-ptpid="50c4-1348-ad62-db8f">登录</view>

                <view @tap="voiceCode" class="send_call ptp_exposure" data-ptpid="eaac-1adf-a790-feac" v-if="sendcall">

                    收不到验证码?试试

                    <text class="green">语音验证</text>

                </view>

            </view>

            <view class="form-mes" v-if="nowindex != 0">

                <view class="input-item">

                    <view class="num">+86</view>

                    <input

                        @blur="lossstyle"

                        @focus="changestyle"

                        @input="regloginaccount"

                        class="item"

                        data-inputNum="0"

                        maxlength="11"

                        placeholder="请输入手机号"

                        placeholderClass="placeholder"

                        type="number"

                    />

                </view>

                <view class="input-item">

                    <input

                        @blur="lossstyle"

                        @focus="changestyle"

                        @input="regloginpass"

                        class="item"

                        data-inputNum="2"

                        :password="isPassword"

                        placeholder="请输入密码"

                        placeholderClass="placeholder"

                        type="text"

                    />

                    <view @tap="changePassType" :class="'iconfont ' + (isPassword ? 'iconeye_off' : 'iconeye')" data-ptpid="8d48-14e8-85ae-6a5f"></view>

                </view>

                <view @tap="reglogin" class="logoin submit ptp_exposure" data-ptpid="2572-1abd-b620-ade5">登录</view>

                <view @tap="forgetpass" class="forget green ptp_exposure" data-ptpid="a54d-1179-8be7-3e5e">

                    <text>忘记密码?</text>

                </view>

            </view>

            <view class="iagree">

                登录注册代表您已同意《

                <text @tap="skipAgreePage" class="green ptp_exposure" data-ptpid="934b-1839-b547-2d42">App用户协议</text>

                》

            </view>

        </view>

        <view @tap="closeImgCode" class="toastbg ptp_exposure" data-ptpid="dad4-159d-ad73-a360" v-if="showimgcode"></view>

        <view class="imagecont" v-if="showimgcode">

            <view class="imagetitle">

                <input @input="getImgCode" class="imagevalue" maxlength="4" placeholder="请输入图片验证码" placeholderClass="placeholder" />

                <image lazyLoad @tap="changeImgCode" class="ptp_exposure" data-ptpid="75db-11fd-a7c2-3fdb" :src="imageCode" style="width: 160rpx; height: 64rpx"></image>

            </view>

            <view @tap="confirmCode" :class="'choosesure ' + (confirmactive ? 'active' : '') + ' ptp_exposure'" data-ptpid="35bd-1312-a0c2-9664">确定</view>

        </view>

    </view>

</template>

<script>

var app = getApp();

export default {

    components: {

  


    },

    data() {

        return {

            logs: [],

            nowindex: 0,

            regularLogin: false,

            select: ['验证码登录', '密码登录'],

            getcode: false,

            getcodemes: '获取验证码',

            sendcall: false,

            hidepass: false,

            callimg: false,

            phone: '',

            code: '',

            submit: {

                submit: false,

                text: '登录'

            },

            miniOpenId: '',

            redirect: '',

            showimgcode: false,

            imageCode: '',

            localcode: '',

            confirmactive: false,

            regmobile: '',

            regpassword: '',

            nowUrl: '/accountCenter/account/fast/login/verifyCode',

            frontPage: '',

            deviceIdCode: Math.random(),

            inputStyle: [

                {

                    iconactive: 'https://qiniu-image.qtshe.com/2017041020px-mobilegreen@3x.png',

                    icon: 'https://qiniu-image.qtshe.com/2017041020px-mobilegray@3x.png',

                    selected: false

                },

                {

                    iconactive: 'https://qiniu-image.qtshe.com/2017041020px-volidegreen@3x.png',

                    icon: 'https://qiniu-image.qtshe.com/2017041020px-volidegray@3x.png',

                    selected: false

                },

                {

                    iconactive: 'https://qiniu-image.qtshe.com/2017041020px-passgreen@3x.png',

                    icon: 'https://qiniu-image.qtshe.com/2017041020px-passgray@3x.png',

                    selected: false

                }

            ],

            nowOnFocus: 0,

            isPassword: true

        };

    },

    onLoad: function (e) {

this.redirect = e.redirect || '';

    },

    methods: {

        getImgCode: function (e) {},

        closeImgCode: function () {

this.showimgcode = false;

        },

        voiceCode: function () {},

        changestyle: function (e) {},

        lossstyle: function (e) {},

        confirmCode: function () {},

        getshortmes: function () {},

        bid: function () {},

// 切换登录方式

        turntap: function (e) {

this.nowindex = e.target.dataset.num;

},

        pushcode: function (e) {},

        bindpancode: function (e) {},

        forgetpass: function () {},

        hideorshow: function () {},

        regloginaccount: function (e) {},

        regloginpass: function (e) {},

        changeImgCode: function () {},

        skipAgreePage: function () {},

        reglogin: function () {},

        inviteFriend: function () {},

        changePassType: function () {}

    }

};

</script>

<style lang="scss" scoped>

@import "./login.scss";

</style>

组件实现代码


<template>

<view class="logway">

<view :class="'act ' + (nowindex == index ? 'active' : '')" v-for="(item, index) in selectArr" :key="index">

<view @tap="turntap" class="item ptp_exposure" :data-index="index" :data-num="index"

data-ptpid="6f22-1fc6-9182-d53d">

{{ item }}

</view>

<view class="dot"></view>

</view>

</view>

</template>

<script>

export default {

data() {

return {

};

},

props: {

selectArr: {

type: Array,

default: []

},

// 当前选中

nowindex: {

type: Number,

default: 0

},

},

methods: {

turntap(e) {

this.$emit("change", e);

},

}

};

</script>

<style lang="scss" scoped>

@import "./index.scss";

</style>

到了这里,关于前端Vue自定义验证码密码登录切换tabs选项卡标签栏标题栏 验证码登录模版 密码登录模版的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • JavaScript编程实现tab选项卡切换的效果+1

    之前在“圳品”信息系统使用了tab选项卡来显示信息,详见: JavaScript编程实现tab选项卡切换的效果 在tab选项卡中使用其它div来显示信息就出现了问题,乱套了,比如下面的这段代码: 运行效果如下: 可以看到,第1张选项卡中的div id=\\\"div1\\\" class=\\\"blue\\\"选项卡1/div消失了,而第

    2024年02月03日
    浏览(20)
  • Angular实现一个简单的带tabs选项卡切换的首页导航功能

    Angular版本:16.1.1  项目结构: angular.json配置:  package.json: tsconfig.app.json: tsconfig.json: styles.scss全局样式表清除部分默认样式 一、ng命令添加4个页面组件(tabs,tab1,tab2,tab3,info),angular会自动把组件导入到app.module.ts中 二、在app.component.html里添加路由占位标签,根据路由规则,

    2024年02月12日
    浏览(12)
  • 前端Vue自定义等宽标签栏标题栏选项卡

    前端组件化开发:以cc-chooseTab组件为例 随着技术的发展,开发的复杂度也越来越高。传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。为了解决这个问题,前端开发社区提

    2024年02月11日
    浏览(12)
  • HTML5+CSS3小实例:3D翻转Tab选项卡切换特效

    实例:3D翻转Tab选项卡切换特效 技术栈:HTML+CSS 效果: 源码: 【HTML】

    2024年02月04日
    浏览(20)
  • 前端仿新浪新闻 tabs 选项卡tabs标签页,根据文字多少自适应 tab项宽度

    前端仿新浪新闻 tabs 选项卡tabs标签页,根据文字多少自适应 tab项宽度, 阅读全文下载完整代码请关注微信公众号: 前端组件开发 效果图如下:     实现代码如下: #### 使用方法 ```使用方法 !-- v-model:选择序列 tabs:选择数组 myColor:下划线颜色 spaceLeft:tabs间距 height:设置高度

    2024年02月08日
    浏览(8)
  • vue前端实现登录时加验证码

    vue移动端(PC端)图形验证码 vue2-verify 地址:vue2-verify的npmjs地址 安装使用: 支持的验证码类型: 常规验证码picture 常规的验证码由数字和字母构成,用户输入不区分大小写,可变形成汉字验证。 运算验证码compute 运算验证码主要通过给出数字的加减乘运算,填写运算结果进

    2024年02月07日
    浏览(14)
  • vue 前端 邮箱、密码、手机号码等输入验证规则

    最近在写前端表单验证的时候,发现一篇文章质量很好,所以写下这篇文章记录 原文章链接:vue 邮箱、密码、手机号码等输入验证规则 全局验证规则脚本,需要的地方引入即可: 给页面表单对象添加验证属性 :rules=“registerRules” ref=“registerForm” 为el-form-item每个表单子项添

    2024年02月15日
    浏览(13)
  • nakamichi车机中控屏密码破解(开发者选项密码、usb主从模式切换密码)

    版本 Android11 平台 mtk 打开开发者选项,连续点击系统版本号会弹出密码框确认 这个默认密码这台设备并没有配置,而是动态的 默认密码 SystemProperties.get(“ro.sys.developer”, “”); 动态根据设备当前日前来生成的格式为 yyyy.MM.dd 所以上面的密码框对应密码为2023.05.04 成功打开开

    2024年02月07日
    浏览(19)
  • 菜鸟级:Vue Element-UI 前端 + Flask 后端 的登录页面验证码

    这里记录登录页面验证码的做法,采取的是前后端分离的做法,前端用Vue,后端用Flask 首先是GIF效果图: 后端返回的数据结构(base64字符串,response.data.img):   1、Vue前端页面基本采用Ruoyi Ui里面的登录页面代码,里面的一些方法进行重写; 首先是单个vue文件里网页内容

    2023年04月08日
    浏览(20)
  • 【手机号验证/前端】Vue2+elementUI编写一个手机号验证码登录页面,路由式开发(附完整代码)

    目录 效果图: 一、template部分 二、style样式 三、script部分 1.先对手机号的格式进行一个判断 2.接下来就是表单验证规则rules 3.最后就是methods了 (1)首先我们给获取验证码绑定一个方法 (2)然后封装一个axios接口,方便后面测试联调(这部分每个人封装的都不一样) (3)然

    2024年02月17日
    浏览(14)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包