Vue验证码60秒倒计时功能简单实例代码

那么我们来逐步讲解如何使用Vue实现验证码60秒倒计时功能的步骤和代码实现。

步骤一:安装Vue

首先,需要安装Vue,可通过以下命令安装:

npm install vue

步骤二:创建Vue实例

在HTML页面中引入Vue库后,需创建Vue实例,用于管理页面数据和操作行为:

const vueApp = new Vue({
  el: '#app',
  data: {
    second: 60, // 倒计时时长
    timer: null, // 定时器
    disabled: false, // 是否禁用按钮
  },
  methods: {
    countdown() { // 倒计时方法
      this.disabled = true; // 禁用按钮
      this.timer = setInterval(() => {
        if (this.second <= 0) {
          clearInterval(this.timer); // 清除定时器
          this.disabled = false; // 启用按钮
          this.second = 60; // 重置倒计时时长
        } else {
          this.second--; // 减少倒计时时间
        }
      }, 1000)
    },
    getCode() { // 获取验证码
      if (this.disabled) return;  
      // 发送验证码的请求代码省略
      this.countdown(); // 调用倒计时方法
    }
  }
})

步骤三:编写HTML模板

在Vue实例中,再编写HTML模板,用于展示页面和绑定事件:

<div id="app">
  <button @click="getCode" :disabled="disabled">{{ disabled ? second + 's后重试' : '获取验证码' }}</button>
</div>

在模板中,可以通过Vue的事件绑定方式(@click)来绑定获取验证码的按钮事件,同时根据状态来控制按钮的禁用状态和显示内容。

示例一: 使用axios请求验证码

methods: {
  countdown() { // 倒计时方法
    this.disabled = true; // 禁用按钮
    this.timer = setInterval(() => {
      if (this.second <= 0) {
        clearInterval(this.timer); // 清除定时器
        this.disabled = false; // 启用按钮
        this.second = 60; // 重置倒计时时长
      } else {
        this.second--; // 减少倒计时时间
      }
    }, 1000)
  },
  getCode() { // 获取验证码
    if (this.disabled) return;
    axios.get('/get-code').then((response) => {
      console.log(response) // 打印验证码请求返回结果
      // 请求成功后,调用倒计时方法
      this.countdown(); 
    }).catch((error) => {
      console.log(error) // 打印验证码请求错误信息
    })
  }
}

示例二: 使用fetch请求验证码

methods: {
  countdown() { // 倒计时方法
    this.disabled = true; // 禁用按钮
    this.timer = setInterval(() => {
      if (this.second <= 0) {
        clearInterval(this.timer); // 清除定时器
        this.disabled = false; // 启用按钮
        this.second = 60; // 重置倒计时时长
      } else {
        this.second--; // 减少倒计时时间
      }
    }, 1000)
  },
  getCode() { // 获取验证码
    if (this.disabled) return;
    fetch('/get-code').then((response) => {
      console.log(response) // 打印验证码请求返回结果
      // 请求成功后,调用倒计时方法
      this.countdown(); 
    }).catch((error) => {
      console.log(error) // 打印验证码请求错误信息
    })
  }
}

以上就是使用Vue实现验证码60秒倒计时功能的完整攻略,希望可以对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Vue验证码60秒倒计时功能简单实例代码 - Python技术站

(0)
上一篇 2023年5月29日
下一篇 2023年5月29日

相关文章

  • 基于CSS实现MaterialUI按钮点击动画并封装成 React 组件

    下面我会详细讲解如何基于CSS实现MaterialUI按钮点击动画并封装为React组件。 1.准备工作 安装MaterialUI 首先需要安装MaterialUI,可以使用npm或yarn进行安装。 npm install @material-ui/core //或使用yarn yarn add @material-ui/core 创建按钮组件 接着需要创…

    Vue 2023年5月27日
    00
  • Vue插件打包与发布的方法示例

    当我们开发Vue.js插件时,我们通常需要对插件进行打包,并发布到npm上,供其他开发者使用。以下是Vue插件打包与发布的方法示例: 1. 打包插件 首先,我们需要使用npm进行插件打包,使用以下命令进行安装相关的开发依赖: npm install –save-dev vue-cli-plugin-library 接下来,使用命令行工具进行打包,可以使用以…

    Vue 2023年5月28日
    00
  • vue插件–仿微信小程序showModel实现模态提示窗功能

    下面是实现“vue插件–仿微信小程序showModel实现模态提示窗功能”的完整攻略: 描述 本攻略旨在帮助开发者使用Vue插件实现模态提示窗功能,效果仿照微信小程序的showModel方法。showModel可以帮助开发者快速实现弹窗的效果,使界面更加友好。 准备工作 在实现该功能之前,需要确保你已经了解了Vue的相关知识,并且已经配置好了Vue环境。 …

    Vue 2023年5月27日
    00
  • vue如何自定义配置运行run命令

    要自定义配置Vue的run命令,需要在项目根目录中创建一个vue.config.js文件,并在该文件中向导出的配置对象的devServer属性下添加相应的配置,例如: // vue.config.js module.exports = { devServer: { port: 8080, open: true, proxy: { ‘/api’: { targ…

    Vue 2023年5月27日
    00
  • 详解Vue项目的打包方式(生成dist文件)

    下面是详解Vue项目的打包方式(生成dist文件)的完整攻略: 一、打包方式介绍 在Vue项目中,我们使用Webpack进行打包,将项目中的所有代码文件打包到一个或多个最终文件中,并生成dist文件夹。 Webpack是一个静态模块打包工具,它能将模块打包成适合浏览器或Node.js环境下使用的静态文件,如JavaScript、CSS、图片等。它使用了类似于…

    Vue 2023年5月28日
    00
  • webpack + vue 打包生成公共配置文件(域名) 方便动态修改

    要实现“webpack + vue 打包生成公共配置文件(域名) 方便动态修改”,可以参照以下步骤: 创建配置文件在项目根目录下创建一个config.js文件,用于存放公共配置信息,例如域名、API地址等。在文件中定义一个对象,包含需要的配置信息。示例代码如下: “`javascript// config.js module.exports = { dom…

    Vue 2023年5月28日
    00
  • Vue 通过公共字段,拼接两个对象数组的实例

    要完成“Vue 通过公共字段,拼接两个对象数组”的操作,可以使用Vue中的计算属性来实现。 在Vue实例的data中定义两个对象数组: data: { arr1: [ { id: 1, name: ‘A’, age: 20 }, { id: 2, name: ‘B’, age: 22 }, { id: 3, name: ‘C’, age: 18 }, ], …

    Vue 2023年5月27日
    00
  • Vue使用echarts的完整步骤及解决各种报错

    Vue使用echarts步骤: 安装echarts 在项目中安装echarts依赖。使用npm安装,在终端中输入以下命令: npm install echarts –save 引入echarts 在需要使用echarts的组件中引入echarts。 import echarts from ‘echarts’ 初始化图表 使用echarts提供的初始化方法进…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部