Condition : cliquez sur le bouton Effacer du sélecteur de date pour effacer la date d'affichage du sélecteur de date et actualiser à nouveau les données dans la liste du tableau.
Merci au sélecteur de date el-date d'Element-ui. Il n'y a pas de fonction de rappel pour le bouton d'effacement intégré
Nous pouvons donc définir un événement de changement pour el-date-picker et ajouter un jugement, si la valeur d'affichage est vide, définir le numéro de page sur la première page et demander à nouveau l'interface de données de liste
Le code source est le suivant
<el-form-item label="开课日期">
<el-date-picker
v-model="formInline.start_date"
type="daterange"
align="center"
unlink-panels
value-format="yyyy-MM-dd"
placeholder="选择开课日期"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions"
clearable
@change="pickerChangeFn()">
</el-date-picker>
</el-form-item>
return {
limit_rows:10,
total_number:0,
total_page:1,
page:1,
formInline: {
start_date:[],
},
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
}
}
pickerChangeFn() {
if(this.formInline.start_date == []){
this.page = 1; //将页码设置为第一页
}
this.getClassList(); //重新请求一次列表接口
},