我在点击按钮的时候,disabledDate ref确实变化了,但是el-date-picer上却没有变化,这该怎么办?
<script setup>
import {onUpdated, ref, watch} from "vue"
import {dayjs} from "element-plus"
const date = ref(dayjs().format("YYYY-MM"))
const disabledDate = ref((date) => {
return false
})
function changeMethon(type) {
if(type === 1) {
disabledDate.value = (date) => {
console.log("type1 : ", date)
return true
}
}else {
disabledDate.value = (date) => {
console.log("type2 : ", date)
return false
}
}
}
onUpdated(() => {
console.log("更新...", disabledDate.value)
})
</script>
<template>
<el-date-picker
v-model="date"
type="month"
format="YYYY-MM"
value-format="YYYY-MM"
style="width: 150px"
:disabled-date="disabledDate"
/>
<el-button @click="changeMethon(1)">切换禁止时间函数1</el-button>
<el-button @click="changeMethon(2)">切换禁止时间函数2</el-button>
</template>
使用 watch 监听 disabledDate 的变化,每当 disabledDate 发生变化时,都会在控制台输出新的值。可以保证 el-date-picker 组件能够检测到 disabledDate 的变化。
<script setup>
import { onUpdated, ref, watch } from "vue";
import { dayjs } from "element-plus";
const date = ref(dayjs().format("YYYY-MM"));
const disabledDate = ref((date) => {
return false;
});
function changeMethon(type) {
if (type === 1) {
disabledDate.value = (date) => {
console.log("type1 : ", date);
return true;
};
} else {
disabledDate.value = (date) => {
console.log("type2 : ", date);
return false;
};
}
}
onUpdated(() => {
console.log("更新...", disabledDate.value);
});
// 监听 disabledDate 的变化
watch(disabledDate, (newVal) => {
console.log("disabledDate 变化了:", newVal);
});
</script>
<template>
<el-date-picker
v-model="date"
type="month"
format="YYYY-MM"
value-format="YYYY-MM"
style="width: 150px"
:disabled-date="disabledDate"
/>
<el-button @click="changeMethon(1)">切换禁止时间函数1</el-button>
<el-button @click="changeMethon(2)">切换禁止时间函数2</el-button>
</template>
el-date-picker defaultTime 动态赋值不生效
Date Picker component with a lot of options and easy to fit in your web application. Flat mode - as element in page Multiple calendars in the component Allows single, multiple or range selection Mark
Date Range Picker 是一个实现了日期范围选择的 jQuery 插件,需要 jQuery UI 1.7 或者以上版本的支持。 示例代码: $('input').daterangepicker( { presetRanges: [ {text: 'My Range', dateStart: '03/07/08', dateEnd: 'Today' } ] } );
Angular Date Time Picker Angular date time picker - Angular reusable UI componentThis package supports Angular 8 Breaking Changes The picker has been updated for Angular 7+ apps. Description Simple An
Rome 是一个日期和时间的选择器控件,不依赖于第三方库。 在线演示:https://bevacqua.github.io/rome
描述 (Description) 您可以在内联选择器中选择值的数量。 就像日期有date, month, year和时间有hours, minutes, seconds 。 例子 (Example) 以下示例演示了在Framework7中使用Inline Picker/Date-time - <!DOCTYPE html> <html> <head> <meta name = "
jQuery Date Range Picker 是一个允许用户自己选择时间范围的 jQuery 插件,支持多语言,支持添加定义新语言。
jQuery Date Picker Plugin 是一个 jQuery 的日期选择插件。