当前位置: 首页 > article >正文

解决前后端日期传输因时区差异导致日期少一天的问题

前端处理

1. 发送日期字符串而非时间戳

在前端使用日期选择器(如 el-date-picker)获取日期后,将日期转换为特定格式的字符串(如 YYYY-MM-DD)发送给后端,避免直接发送带有时区信息的时间戳或日期对象。这样做的好处是将日期信息以一种通用、无歧义的格式传递,减少后端处理时区的复杂性。

vue

<template>
  <el-form :model="warehousingForm" ref="formRef">
    <el-form-item label="生产日期" prop="productionDate">
      <el-date-picker v-model="warehousingForm.productionDate" type="date" placeholder="选择日期">
      </el-date-picker>
    </el-form-item>
    <el-form-item label="有效期" prop="expiringDate">
      <el-date-picker v-model="warehousingForm.expiringDate" type="date" placeholder="选择日期">
      </el-date-picker>
    </el-form-item>
    <el-button @click="submitForm">提交</el-button>
  </el-form>
</template>

<script>
export default {
  data() {
    return {
      warehousingForm: {
        productionDate: null,
        expiringDate: null
      }
    };
  },
  methods: {
    submitForm() {
      if (this.warehousingForm.productionDate) {
        this.warehousingForm.productionDate = this.formatDate(this.warehousingForm.productionDate);
      }
      if (this.warehousingForm.expiringDate) {
        this.warehousingForm.expiringDate = this.formatDate(this.warehousingForm.expiringDate);
      }
      // 模拟发送请求
      console.log(JSON.stringify(this.warehousingForm));
    },
    formatDate(date) {
      const d = new Date(date);
      const year = d.getFullYear();
      const month = String(d.getMonth() + 1).padStart(2, '0');
      const day = String(d.getDate()).padStart(2, '0');
      return `${year}-${month}-${day}`;
    }
  }
};
</script>

http://www.kler.cn/a/549103.html

相关文章:

  • 当时只道是寻常
  • vue3.x 的provide 与 inject详细解读
  • golang基础库
  • Python 中的一种调试工具 assert
  • 聚簇索引和非聚簇索引
  • 排序算法衍生问题
  • 基于大数据的动漫网站数据分析系统的设计与实现
  • 建筑兔零基础自学python记录22|实战人脸识别项目——视频人脸识别(下)11
  • du-磁盘占用管理
  • day52 第十一章:图论part03
  • 深入理解 Vue3 中 ref 与 reactive 的区别及应用
  • 基于css实现正六边形的三种方案
  • macOS部署DeepSeek-r1
  • 2025年-数据库排名
  • 基于腾讯云TI-ONE 训练平台快速部署和体验 DeepSeek 系列模型
  • Jasper AI技术浅析(二):语言模型
  • 第32周:文献阅读
  • 2025最新出炉--前端面试题十一
  • 字符串-KMP算法详解-图文教程
  • java opencv使用rtsp拉流没有数据