前后端分离开发,Vue+element-ui往后台传日期区间的问题
element
A Vue.js 2.0 UI Toolkit for Web
项目地址:https://gitcode.com/gh_mirrors/eleme/element
免费下载资源
·
现在有个需求是根据给定日期的范围查询,第一点想到的是,前台传一个日期区间,后边接收到值以后再SQL语句中使用 Between and 查询。
出现的问题:
前台使用element的日期组件:
它默认返回的是date类型,而且这个组件只返回一个对象,这对后台使用 Between an比较麻烦,
这里不再赘述问题的产生原因,直接上代码,亲测有效。
首先使用elementui中时间选择器,我使用的是带快捷选项的那个:
<el-date-picker
v-model="params.date"
type="daterange"
format="yyyy 年 MM 月 dd 日"
value-format="yyyy-MM-dd"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
然后 使用v-model 绑定值
注意这里的startTime和endTime才是真正后台接受的值,继续看下面就明白了
params: {
startTime: '',
endTime: '',
date: '',
},
这里说一下 element中的中的 type="daterange"默认返回的是一个 String类型的数组,所以你在后台接受时不能使用Date类型去接收**
完成上面两步以后就要发送请求给后台传数据了
:这里需要把上面日期选择器得到的就是 date 转换为字符串,并且给他截取成你需要的字符串,着了我截取后传给后台的值 的格式是: startTime=2010-10-02 endTime=2012-10-3
let startDate=this.params.date.toString();
this.params.startTime=startDate.substring(0,10);
this.params.endTime=startDate.substring(11)
然后后台定义为
private String startTime;
private Srring endTime
这样后台就能获取到日期区间,并且在使用Between and 查询时也可以查询到正确的值,我的这个日期选择器没有做例如 只能选择今天之前的日期这样的处理,需要的话还请自行百度,
GitHub 加速计划 / eleme / element
10
1
下载
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:4 个月前 )
c345bb45
8 个月前
a07f3a59
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update table.md
* Update transition.md
* Update popover.md 8 个月前
更多推荐
已为社区贡献1条内容
所有评论(0)