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

el-date-picker手动输入日期,通过设置开始时间和阶段自动填写结束时间

需求:根据开始时间,通过填写阶段时长,自动填写结束时间,同时开始时间和节数时间可以手动输入

代码如下:

 <el-form ref="ruleForm2" :rules="rules2" :model="formData" inline label-position="right" label-width="120px"> <el-form-item label="开始时间" prop="beginTime"><el-date-pickerv-model="formData.beginTime"v-elDateFormateditablevalue-format="timestamp"type="date"placeholder="请选择日期"clearablestyle="width: 180px"@change="changeEndTime"/></el-form-item><!-- 添加一个阶段时长 --><el-form-item label="阶段时长" prop="stageDuration"><el-input v-model="formData.stageDuration" style="width: 180px"  @blur="stageDurationBlur" /><span class="span_style">(最小单位半月)</span></el-form-item><el-form-item label="结束时间" prop="endTime"><el-date-pickerv-model="formData.endTime"v-elDateFormateditablevalue-format="timestamp"type="date"placeholder="请选择日期"clearablestyle="width: 180px"/></el-form-item>
</el-form>

 

    changeEndTime(time) {
//这里是项目的一个判断 与主体逻辑无关if (this.formData.stageNature == 'point') {// this.formData.endTime = this.timestampToYYYYMMDD(time)this.formData.endTime = time} else {this.calculateEndDate()}},stageDurationBlur(e) {if (this.formData.stageNature !== 'point' && this.formData.beginTime &&             e.target.value) {this.calculateEndDate()}},calculateEndDate() {if (this.formData.beginTime && this.formData.stageDuration) {const beginTime = new Date(this.formData.beginTime)const duration = parseFloat(this.formData.stageDuration)if (!isNaN(duration) && duration > 0) {const daysToAdd = Math.floor(duration * 15) // 将输入的值乘以15天const endTime = new Date(beginTime)endTime.setDate(beginTime.getDate() + daysToAdd)this.formData.endTime = endTime.getTime()} else {this.formData.endTime = ''}}},

 

手动输入日期,默认回显日期功能,我这边后端参数需要的是时间戳,使用时需要看清楚后端需要的数据类型

  watch: {formData: {handler(newValue, oldValue) {if (newValue.beginTime && newValue.beginTime != '') {// 判断有没有横杠  输入的日期 格式是 2024-07-15的,或者是20240715这种 if (typeof newValue.beginTime === 'string' && newValue.beginTime.indexOf('-') == -1) {let str = newValue.beginTimeconst positions = [4, 6]const char = '-'for (let i = positions.length - 1; i >= 0; i--) {const position = positions[i]str = str.substring(0, position) + char + str.substring(position)}this.formData.beginTime = str}} else {this.formData.beginTime = ''}},immediate: true,deep: true}},

效果图:

相关文章:

el-date-picker手动输入日期,通过设置开始时间和阶段自动填写结束时间

需求&#xff1a;根据开始时间&#xff0c;通过填写阶段时长&#xff0c;自动填写结束时间&#xff0c;同时开始时间和节数时间可以手动输入 代码如下&#xff1a; <el-form ref"ruleForm2" :rules"rules2" :model"formData" inline label-po…...

springboot 适配ARM 架构

下载对应的maven https://hub.docker.com/_/maven/tags?page&page_size&ordering&name3.5.3-alpinedocker pull maven:3.5.3-alpinesha256:4c4e266aacf8ea6976b52df8467134b9f628cfed347c2f6aaf9e6aff832f7c45 2、下载对应的jdk https://hub.docker.com/_/o…...

ElementUI el-select 组件动态设置disabled后,高度变更的问题解决办法

问题描述 Vue2 项目在使用 el-select 组件时&#xff0c;动态将disabled变更为了 true&#xff0c;元素的高度发生了变化。 问题原因 通过浏览器开发人员工具面板&#xff0c;发现&#xff0c;组件内的 input 元素被动态设置了height的样式&#xff1a; 在项目中检查后并…...

写个网络爬虫

网络爬虫是一种自动化程序&#xff0c;通过发送HTTP请求并解析HTML等网页内容&#xff0c;获取指定网页数据的工具。下面是一个简单的Python代码示例&#xff0c;用于实现一个基本的网络爬虫&#xff1a; import requests from bs4 import BeautifulSoupdef get_html(url):try…...

模板方法模式的实现

1. 引言: 交易管理系统中的模板方法模式 之前做过一个交易管理系统&#xff0c;其中有一个核心模块是“交易流程管理”&#xff0c;该模块需要处理不同类型的交易&#xff0c;比如期货交易、期权交易和股票交易。在构建交易管理系统的过程中&#xff0c;我们面临了一个核心挑战…...

Redis的计数功能

Redis的学习专栏&#xff1a;http://t.csdnimg.cn/a8cvV 许多应用都会使用Redis作为计数的基本工具&#xff0c;可以实现快速计数、查询缓存的功能&#xff0c;同时数据也可以异步处理。例如&#xff1a;博客浏览&#xff0c;用户每查看一次&#xff0c;就会增加一次的访问量&a…...

WPF学习(7) --MVVM模式

1. MVVM模式概述 MVVM模式由三个主要部分组成&#xff1a; Model&#xff08;模型&#xff09;&#xff1a;包含应用程序的业务逻辑和数据。通常是数据对象和数据访问层。View&#xff08;视图&#xff09;&#xff1a;用户界面部分&#xff0c;展示数据并与用户进行交互。通…...

【人工智能】-- 受限玻尔兹曼机

个人主页&#xff1a;欢迎来到 Papicatch的博客 课设专栏 &#xff1a;学生成绩管理系统 专业知识专栏&#xff1a; 专业知识 文章目录 &#x1f349;引言 &#x1f349;受限玻尔兹曼机 &#x1f348;RBM的结构 &#x1f34d;RBM的架构图 &#x1f34d;RBM的经典实现 &…...

在 Android 中定义和使用自定义属性

1. 定义自定义属性 首先&#xff0c;我们需要在 res/values/attrs.xml 文件中定义自定义属性。这些属性可以是颜色、尺寸、字符串等。 创建或打开 res/values/attrs.xml 文件&#xff0c;并添加以下内容&#xff1a; <?xml version"1.0" encoding"utf-8&…...

【实战:python-Django发送邮件-短信-钉钉通知】

一 Python发送邮件 1.1 使用SMTP模块发送邮件 import smtplib from email.mime.text import MIMEText from email.header import Headermsg_from 306334678qq.com # 发送方邮箱 passwd luzdikipwhjjbibf # 填入发送方邮箱的授权码(填入自己的授权码&#xff0c;相当于邮箱…...

Todo List

待整理的笔记&#xff0c;先列出来&#xff0c;防止后面忘记要整理什么内容。一个一个整理&#xff1a; Linux内核ARM架构(v8)的系统调用的实现过程&#xff1b;open()/write()/read()在Linux内核中的详细实现过程&#xff0c;到驱动中注册的操作集的调用过程&#xff1b;文件…...

【Redis】Redis十大类型

文章目录 前言一、string字符串类型二、List列表类型三、 Hash表四、 Set集合五、 ZSet有序集合六、 GEO地理空间七、 HyperLogLog基数统计八、Bitmap位图九、bitfield位域十、 Stream流10.1 队列指令10.2 消费组指令10.3 ACK机制 前言 redis是k-v键值对进行存储&#xff0c;k…...

存储实验:Linux挂载iscsi硬盘与华为OceanStor创建LUN全流程

目录 目的环境规划实验实验流程Centos配置0. 关闭防火墙1. 设置网卡信息2. 配置路由3. iscsiadm连接存储 iSCSI LUN创建&#xff08;以华为OceanStor为例&#xff09;验证1. 验证是否成功2. 开启自动挂载 目的 实现Linux连接iscsi硬盘&#xff0c;同时实现开机自启挂载 环境规…...

高可用系统架构设计技术方案:Java架构师视角

在现代互联网环境下&#xff0c;高可用性&#xff08;High Availability, HA&#xff09;已成为衡量系统质量的重要指标之一。对于Java架构师而言&#xff0c;设计一套能够保证业务连续性、快速恢复和持续服务的高可用系统架构&#xff0c;是一项复杂而挑战性的任务。本文将从J…...

C++ --> 类和对象(三)

欢迎来到我的Blog&#xff0c;点击关注哦&#x1f495; 前言 前面已经对类和对象有一定的了解&#xff0c;接下来再次深入的了解一下。 一、深入理解构造函数 构造函数体赋值&#xff1a; 虽然上述构造函数调用之后&#xff0c;对象中已经有了一个初始值&#xff0c;但是不能…...

JS【详解】类 class ( ES6 新增语法 )

本质上&#xff0c;类只是一种特殊的函数。 console.log(typeof 某类); //"function"声明类 class 方式 1 – 类声明 class Car {constructor(model, year) {this.model model;this.year year;} }方式 2 – 类表达式 匿名式 const Car class {constructor(mod…...

vue中使用$set方法给对象添加属性

vue中可以使用$set()给对象添加属性&#xff0c;但不是所有的对象都可以使用&#xff0c;vue中api明确说明&#xff0c;它必须用于向响应式对象上添加属性 响应式对象&#xff0c;vue的响应式原理&#xff0c;可以查看&#xff1a;深入响应式原理 — Vue.js ①对象赋值 this…...

【Python】ftplib的使用

仅描述基础要点&#xff0c;备忘。 python自带ftplib库&#xff0c;可实现ftp读写。 1 要点 ftp未使用默认端口21时&#xff0c;需显示指定端口。ftp路径带有中文&#xff0c;可能需要设置ftp的encoding属性为 gbk。ftplib不支持递归创建目录&#xff0c;需手动创建层级目录…...

CSS 【详解】CSS 函数(含 calc,min,max,clamp,cubic-bezier,env,steps 等)

函数描述CSS 版本attr()返回选择元素的属性值。2calc()允许计算 CSS 的属性值&#xff0c;比如动态计算长度值。3cubic-bezier()定义了一个贝塞尔曲线(Cubic Bezier)。3hsl()使用色相、饱和度、亮度来定义颜色。3hsla()使用色相、饱和度、亮度、透明度来定义颜色。3linear-grad…...

简单理解Lua 协程(coroutine)

也许更好的阅读体验 协程简单理解为可以暂停的线程&#xff0c;但是同一时刻只有一个协程可以处于运行状态。 文章目录 coroutine.create()coroutine.resume()coroutine.wrap()coroutine.yield()coroutine.resume()参数传递resume和yield之间互换数据 coroutine.create() lua…...

如何用Ninject实现松耦合架构:实战案例分析与最佳实践

如何用Ninject实现松耦合架构&#xff1a;实战案例分析与最佳实践 【免费下载链接】Ninject the ninja of .net dependency injectors 项目地址: https://gitcode.com/gh_mirrors/ni/Ninject Ninject是.NET平台上一款轻量级依赖注入框架&#xff0c;被称为"the nin…...

突破城通网盘限速限制:ctfileGet工具的直连解析解决方案

突破城通网盘限速限制&#xff1a;ctfileGet工具的直连解析解决方案 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 在数字化时代&#xff0c;文件传输已成为日常工作与学习的基础需求。城通网盘作为国…...

RMBG-2.0(BiRefNet)开源抠图工具落地实操:Streamlit双列界面零门槛上手

RMBG-2.0&#xff08;BiRefNet&#xff09;开源抠图工具落地实操&#xff1a;Streamlit双列界面零门槛上手 想给产品换个背景&#xff0c;却不会用复杂的PS&#xff1f;想快速处理一批图片素材&#xff0c;又担心在线工具泄露隐私&#xff1f;今天&#xff0c;我们就来聊聊一个…...

SDMatte企业级应用:结合数据库实现大规模图片素材管理

SDMatte企业级应用&#xff1a;结合数据库实现大规模图片素材管理 1. 引言&#xff1a;企业图片管理的痛点与机遇 电商公司每天要处理上千张商品图片&#xff0c;设计师团队经常加班到深夜手动抠图。市场部门需要快速调用不同版本的素材&#xff0c;却总在混乱的文件夹里迷失…...

Intv_ai_mk11 流程图生成与解析:集成Visio实现架构设计智能辅助

Intv_ai_mk11 流程图生成与解析&#xff1a;集成Visio实现架构设计智能辅助 1. 场景痛点&#xff1a;传统架构设计的效率瓶颈 在系统架构设计和业务流程规划中&#xff0c;流程图是最常用的可视化工具之一。传统的工作流程通常是这样的&#xff1a;架构师先在脑海中构思设计&…...

Qwen3-14B私有部署镜像Node.js环境配置与API服务搭建

Qwen3-14B私有部署镜像Node.js环境配置与API服务搭建 1. 开篇&#xff1a;为什么选择Node.js对接Qwen3-14B 如果你正在寻找一个高效的方式来将Qwen3-14B大模型集成到你的应用中&#xff0c;Node.js可能是最合适的选择。作为现代JavaScript运行时&#xff0c;Node.js的非阻塞I…...

交互弹窗设计避坑指南:Toast、Dialog、Actionbar和Snackbar的常见错误与优化建议

交互弹窗设计避坑指南&#xff1a;Toast、Dialog、Actionbar和Snackbar的常见错误与优化建议 在移动应用和网页设计中&#xff0c;交互弹窗是用户界面中不可或缺的元素。它们像数字世界中的交通信号灯&#xff0c;引导用户完成各种操作流程。然而&#xff0c;设计不当的弹窗不仅…...

保姆级教程:Qwen3-TTS-Tokenizer-12Hz快速入门,小白也能玩转音频压缩

保姆级教程&#xff1a;Qwen3-TTS-Tokenizer-12Hz快速入门&#xff0c;小白也能玩转音频压缩 1. 音频压缩新选择&#xff1a;为什么你需要了解Qwen3-TTS-Tokenizer 想象一下&#xff0c;你有一段30秒的语音消息&#xff0c;原始文件大小约480KB。如果能把它压缩到不到1KB&…...

FolioReaderKit文本转语音功能:如何实现TTS语音朗读的详细指南

FolioReaderKit文本转语音功能&#xff1a;如何实现TTS语音朗读的详细指南 【免费下载链接】FolioReaderKit &#x1f4da; A Swift ePub reader and parser framework for iOS. 项目地址: https://gitcode.com/gh_mirrors/fo/FolioReaderKit &#x1f4da; FolioReader…...

LFM2.5-1.2B-Thinking-GGUF效果展示:多语言混合prompt响应能力实测

LFM2.5-1.2B-Thinking-GGUF效果展示&#xff1a;多语言混合prompt响应能力实测 1. 模型核心能力概览 LFM2.5-1.2B-Thinking-GGUF是Liquid AI推出的轻量级文本生成模型&#xff0c;专为低资源环境优化设计。这个1.2B参数的模型采用GGUF格式&#xff0c;通过llama.cpp运行时实现高…...