解決antd datepicker 獲取時間默認少8個小時的問題
1、擴展日期格式化方法
Date.prototype.format = function (fmt) {
let o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小時
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (let k in o) {
if (new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
}
}
return fmt;
};
2、對選中日期的時間進行格式化處理,最終得到的時間就是當前時間
new Date(value).format(“yyyy-MM-dd hh:mm:ss”)
補充知識:antd datepicker設(shè)置開始時間和期限計算出結(jié)束時間并且去除周六日
datepicker 需要使用moment格式的時間作為value,但是在操作 此value時,包括moment.add()等方法都會直接改變datepicker的值,即使沒有重新賦值。此時需要配合moment-immutable-methods使用
import { momentImmutableMethods } from 'moment-immutable-methods'
momentImmutableMethods(moment)
getFinishTime=(value)=>{
const {getFieldValue} = this.props.form
let i = 0
if(typeof(value)==="number"){
let incomingTime = getFieldValue("incomingTime")
while(i<value){
if(incomingTime.addImmu(1,'d').weekday()!==5&&incomingTime.addImmu(1,'d').weekday()!==6){
i++
incomingTime = incomingTime.addImmu(1,'d')
}else{
incomingTime = incomingTime.addImmu(1,'d')
}
}
this.setState({
finishTime:value===16?moment():incomingTime,
disabledFinishTime:value===16?false:true
})
}else if(typeof(value)==="object"){
let deadTime = getFieldValue("deadTime")
while(i<deadTime){
if(value.addImmu(1,'d').weekday()!==5&&value.addImmu(1,'d').weekday()!==6){
i++
value = value.addImmu(1,'d')
}else{
value = value.addImmu(1,'d')
}
}
this.setState({
finishTime:deadTime===16?moment():value,
disabledFinishTime:deadTime===16?false:true
})
}
}
以上這篇解決antd datepicker 獲取時間默認少8個小時的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解vue-cli+element-ui樹形表格(多級表格折騰小計)
這篇文章主要介紹了vue-cli + element-ui 樹形表格(多級表格折騰小計),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04
vue 解決addRoutes動態(tài)添加路由后刷新失效問題
這篇文章主要介紹了vue 解決addRoutes動態(tài)添加路由后刷新失效問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07
Vue項目前后端聯(lián)調(diào)(使用proxyTable實現(xiàn)跨域方式)
這篇文章主要介紹了Vue項目前后端聯(lián)調(diào)(使用proxyTable實現(xiàn)跨域方式),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
vue實現(xiàn)將一維數(shù)組變換為三維數(shù)組
這篇文章主要為大家詳細介紹了vue如何實現(xiàn)將一維數(shù)組變換為三維數(shù)組,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-01-01
vue框架編輯接口頁面下拉級聯(lián)選擇并綁定接口所屬模塊
這篇文章主要為大家介紹了vue框架編輯接口頁面實現(xiàn)下拉級聯(lián)選擇以及綁定接口所屬模塊,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
vue實現(xiàn)element上傳多張圖片瀏覽刪除功能
這篇文章主要介紹了vue實現(xiàn)element上傳多張圖片瀏覽刪除功能,本文結(jié)合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-10-10

