# dtTool 日期函数

# ActivityCountDown 活动倒计时

属性 说明
start 开始时间时间戳(秒)
end 结束时间时间戳(秒)
status 状态 wait:未开始,start:已开始,end:已结束
seconds 距离开始,或者距离结束的秒数
timeObj 时间对象,由getTimeDiffObj()返回
import {ActivityCountDown} from '@/utils/index'
const start=new kDate().timeStamp();

const djs=new ActivityCountDown(start,start+1000);

# CountDown 倒计时

倒计时,主要用于发送验证码

属性 说明
_time 启动倒计时时的初始化秒数
second 当前倒计时剩余秒数
方法 说明
start 启动倒计时
clear 主动结束倒计时
事件 说明
onEnd 倒计时结束时触发
<view class="p-sms-bt" @click='getCode' v-if="countDown.second===0">获取验证码</view>
<view class="p-sms-bt p-disable" v-else>{{countDown.second}}s</view>

    import {AppConfig} from "../../appConfig";
    import {Ajax, dtTool, Check, layer} from "../../utils/index";

    export default {
        data() {
            return {
                countDown: new dtTool.CountDown(60),
                phone:''
            }
        },
        methods: {
            getCode() {
                //……
                Ajax.post(AppConfig.api.wallet.captcha, {
                    type: 5,
                    phone: this.phone
                }).then(res => {
                    this.$toptip('验证码已发送', 'success');
                    this.countDown.start();
                })

            },
        },
        onUnload() {
            this.countDown.clear();
        }
    }

# getMaxDayOfMonth(year,month)

获取指定月份的天数
year:年份
month:月份,1-12

# getTimeDiffText(start, end)

计算时间差,并转化为中文显示
先调用getTimeDiffSeconds,再调用timeDiffToStr

# getTimeDiffSeconds(start, end)

计算时间差,返回秒数
start:date对象,开始时间
end:date对象,结束时间

# timeDiffToStr(value,showTime)

倒计时场景下显示时间
value:秒数
shoeTime:是否显示分和秒,默认为true

# getTimeDistance(time)

显示指定时间与当前时间的距离
time:开始时间,date对象或者有效时间字符串,
返回值有如下可能:X年前、X个月前、X天前、X小时前、X分钟前、刚刚

import {dtTool} from '@/utils';
dtTool.getTimeDistance('2020-02-01');
dtTool.getTimeDistance(new Date(2020,0,1));

# getTimeDiffObj(seconds)

将秒数转换为对象,主要用于倒计时展示
seconds:秒数
返回对象包含day、hour、minute、second四个属性

# strToDate

将字符串转换为Date对象

# parse

将时间戳或字符串转换为Date对象
如果传入了Date对象,则会复制其值,返回一个新的Date对象

# format(date,fmt)

格式化date对象,默认输出为yyyy-MM-dd hh:mm:ss形式

# parseAndFormat(value,fmt)

将时间戳或字符串转换为date对象后,再调用format方法格式化

# getWeekText(date)

获取指定日期是星期几,返回值为周日、周一……周六

Last Updated: 3/25/2020, 5:21:06 PM