IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue倒计时 -> 正文阅读

[JavaScript知识库]vue倒计时

<template>
  <main-area :title="title" class="fullfill" :buttonArray='buttonArray'>
    <div class="divTitle">交易信息确认</div>

    <div class="content">
      <y-table class=""
               :data="tableData.data"
               :pagination="pagination">
        <el-table-column type="index"
                         align="center"
                         width="100"
                         label="序号">
        </el-table-column>
        <el-table-column align="center"
                         width=""
                         prop="PrdName"
                         label="交易类型">
        </el-table-column>
        <el-table-column align="center"
                         width=""
                         prop="PrdCode"
                         label="手机号码">
        </el-table-column>
      </y-table>
    </div>

    <div class="divTitle1">
      签约手机号:
      <el-input ref="contractMobilePhoneNo" class="el-input" v-model="contractMobilePhoneNo"></el-input>
    </div>

    <div class="divTitle1">
      短信验证码:
      <el-input ref="verifyCode" class="el-input1"></el-input>
      <el-button id="getVerifyCode" round :disabled="disable" :class="{ codeGeting:isGeting }" @click="getVerifyCode">
        {{getCode}}
      </el-button>
    </div>

    <div class="divTip" id="divTip" v-show="showTip">请输入11位手机号码!</div>
  </main-area>
</template>


<script>
  import config from '@/config'

  require('@/styles/index.scss')

  export default {
    data() {
      return {
        showTip: false,
        verificationCode: '',
        contractMobilePhoneNo: '',
        title: '',
        staticResourcePath: config.staticResourcePath,
        buttonArray: [{}, {}, {}, {}, {}, {}, {}, {}],
        tableData: {
          total: 0,
          data: []
        },
        pagination: {
          total: 0,
          currentPage: 1,
          pageSize: 1,
          mode: 'page'
          //all:一次加载所有数据,前端进行分页控制
          // page:每次翻页都去后端读取一次数据
          // cache:前端在翻页过程中,没有数据后才发送查询到后端,后端根据分页情况加载缺失的数据并追加到数据池中(风险,缓存中的数据有变更)
        },
        getCode: '发送验证码',
        isGeting: false,
        count: 10,
        disable: false
      }
    },

    computed: {},

    created() {
      let messages = this.$i18n.messages;
      this.buttonArray = [
        //F1
        {
          show: true,
          text: {
            //zh: messages.zh.main.btn.cancel,
            //en: messages.en.main.btn.cancel
          },
          photo: {
            normal: `${config.staticResourcePath}/img/home.png`
          }
        },

        //F2
        {
          show: true,
          text: {
            //zh: messages.zh.main.btn.cancel,
            //en: messages.en.main.btn.cancel
          },
          photo: {
            normal: `${config.staticResourcePath}/img/srcb_return.png`
          }
        },

        //F3
        {},

        //F4
        {
          show: true,
          text: {
            //zh: messages.zh.main.btn.cancel,
            //en: messages.en.main.btn.cancel
          },
          photo: {
            normal: `${config.staticResourcePath}/img/srcb_ADMConfirm.png`
          }
        },

        //F5
        {
          show: true,
          text: {
            //zh: messages.zh.main.btn.cancel,
            //en: messages.en.main.btn.cancel
            zh: '滑动退出'
          },
          photo: {
            normal: `${config.staticResourcePath}/img/btnDown.png`
          },
        },

        //F6
        {},

        //F7
        {},

        //F8
        {}
      ]
      this.buttonArray = [...this.buttonArray];
      //获取选中的数据
      this.tableData.data.push(parent.MARS.getDataPoolValue("Tran_TableRow"));
      console.log(this.tableData.data);
      //获取手机号
      this.contractMobilePhoneNo = parent.MARS.getDataPoolValue("Tran:ContractMobilePhoneNo");
      //获取验证码 Tran:VerificationCode
      this.verificationCode = parent.MARS.getDataPoolValue("Tran:VerificationCode");
    },

    mounted() {
      let messages = this.$i18n.messages;
    },

    methods: {
      getVerifyCode() {
        //校验手机号
        let contractMobilePhoneNo = this.$refs.contractMobilePhoneNo.value;
        const reg = /^1[3456789]\d{9}$/;
        if (reg.test(contractMobilePhoneNo)) {
          parent.MARS.setDataPoolValue("Tran:ContractMobilePhoneNo", contractMobilePhoneNo);
          var countDown = setInterval(() => {
            if (this.count < 1) {
              this.isGeting = false;
              this.disable = false;
              this.getCode = '获取验证码';
              this.count = 10;
              clearInterval(countDown);
            } else {
              this.isGeting = true;
              this.disable = true;
              this.getCode = '重新发送(' + this.count-- + ')'
            }
          }, 1000);
        } else {
          this.showTip = true;
          console.log("请输入正确的手机号");
        }
      }
    }
  }
</script>

<style lang="scss" scoped>
  .content {
    position: relative;
    width: 100%;
    margin-top: 2%;
  }

  .divTitle {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    margin-top: 1%;
  }

  .divTitle1 {
    font-size: 25px;
    font-weight: bold;
    margin-top: 1%;
  }

  .divTip {
    font-size: 20px;
    font-weight: lighter;
    margin-top: 1%;
    color: red;
  }

  /deep/ .el-table th {
    font-weight: lighter;
  }

  .el-input {
    width: 30%;
  }

  .el-input1 {
    width: 15%;
  }

  .el-button {
    margin-left: 1%;
    width: 14%;
    font-size: 20px;
    font-weight: bold;
  }

  .codeGeting {
    background: #cdcdcd;
    border-color: #cdcdcd;
  }
</style>

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-17 01:25:52  更:2021-08-17 01:26:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 9:44:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码