<el-date-picker v-model="params.selectMonth" type="month" value-format="yyyyMM" placeholder="选择月"> </el-date-picker> 默认为当前日期的上个月怎么写
时间: 2024-02-14 08:11:24 浏览: 31
你可以在初始化 `params.selectMonth` 时将其设置为当前日期的上个月。具体的做法是:
```javascript
var today = new Date(); // 获取当前日期
var lastMonth = new Date(today.getFullYear(), today.getMonth() - 1); // 计算上个月的日期
var year = lastMonth.getFullYear();
var month = lastMonth.getMonth() + 1;
if (month < 10) {
month = '0' + month; // 如果月份是一位数,前面补0
}
var selectMonth = year + month; // 拼接成 yyyyMM 的格式
params.selectMonth = selectMonth; // 将默认值赋给 v-model
```
这样就可以将 `params.selectMonth` 默认设置为当前日期的上个月了。
相关问题
请给以下代码的序号设置高为52px,宽为76px, <el-form v-show="showSearch" ref="queryForm" :model="queryParams" :inline="true" label-width="68px" > <el-form-item label="素材名称" prop="name"> <el-input v-model="queryParams.name" placeholder="请输入素材名称" clearable size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item label="状态" prop="status"> <el-select v-model="queryParams.status" placeholder="请选择状态" clearable size="small" > <el-option v-for="dict in statusOptions" :key="dict.value" :label="dict.label" :value="dict.value" /> </el-select> </el-form-item> <el-form-item label="创建时间"> <el-date-picker v-model="dateRange" size="small" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" /> </el-form-item> <el-form-item> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" >搜索</el-button > <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" >重置</el-button > </el-form-item> </el-form>
可以在样式中设置 `label-width` 属性以及每个表单元素的宽高。
以下是给以上代码的序号设置高为52px,宽为76px的示例代码:
```html
<el-form
v-show="showSearch"
ref="queryForm"
:model="queryParams"
:inline="true"
label-width="68px"
style="width: 100%; height: 52px;"
>
<el-form-item label="素材名称" prop="name" style="width: 76px;">
<el-input
v-model="queryParams.name"
placeholder="请输入素材名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
style="width: 76px;"
/>
</el-form-item>
<el-form-item label="状态" prop="status" style="width: 76px;">
<el-select
v-model="queryParams.status"
placeholder="请选择状态"
clearable
size="small"
style="width: 76px;"
>
<el-option
v-for="dict in statusOptions"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="创建时间" style="width: 240px;">
<el-date-picker
v-model="dateRange"
size="small"
style="width: 240px;"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
/>
</el-form-item>
<el-form-item style="width: 150px;">
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
style="width: 72px; height: 32px; margin-right: 10px;"
>
搜索
</el-button>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery"
style="width: 72px; height: 32px;"
>
重置
</el-button>
</el-form-item>
</el-form>
```
注意,以上代码中的样式设置只是示例,实际应用中需要根据具体需求进行调整。
后端使用 private List<Date> exeTime;前端 <el-form-item label="执行时间" prop="exeTime"> <el-date-picker clearable v-model="queryParams.exeTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" placeholder="请选择创建时间"> </el-date-picker> </el-form-item>查询不来数据数组返回为空
前端传递的参数是一个 Date 类型的数组,而后端接收的参数是一个 List<Date> 类型的,需要在前端传递参数时将数组转换为 List。可以在前端代码中使用 JavaScript 的 Array.prototype.map() 方法将 Date 类型的数组转换为字符串类型的数组,然后再传递给后端。修改后的代码如下:
```
<el-form-item label="执行时间" prop="exeTime">
<el-date-picker clearable
v-model="queryParams.exeTime"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
placeholder="请选择创建时间">
</el-date-picker>
</el-form-item>
<script>
export default {
data() {
return {
queryParams: {
exeTime: []
}
};
},
methods: {
search() {
// 使用 Array.prototype.map() 方法将 Date 类型的数组转换为字符串类型的数组
let exeTime = this.queryParams.exeTime.map(item => {
return item.toLocaleString();
});
// 将转换后的参数传递给后端
let params = {
exeTime: exeTime
};
// 发送请求
axios.get('/api/data', { params: params })
.then(res => {
console.log(res.data);
})
.catch(err => {
console.log(err);
});
}
}
}
</script>
```
这样就可以将前端传递的参数转换为后端需要的 List 类型了。