看了网上很多解决方法,但大多数都是针对Element UI 的,而 Vue3 使用的 Element-plus 在元素class名字上面做了一些更改,导致element UI的元素选择器并不生效。
参考链接:element-ui 时间组件date-picker 去掉"此刻"二字_el-date-picker 此刻-CSDN博客
在这篇链接的基础上,评论区发现了针对element-plus 的解决方法:
1. el-date-picker 中加入 popper-class
css
<el-date-picker
v-model="form.myTime"
type="datetime"
popper-class="no-atTheMoment"
value-format="yyyy-MM-dd HH:mm:ss"
// 时间选择范围
:picker-options="pickerOptionsStartDateTime"
placeholder="选择时间"
>
</el-date-picker>
在<el-date-picker>这个标签内加入popper-class="no-atTheMoment",这个是官方提供的日期弹出层添加样式的方法,用这个classname做限制,不想显示"此刻"的,就加上这个,想显示的,就去掉它即可。
2. 在全局引入的css文件中,添加样式(由于添加了popper-class,所以不用担心影响其他el-date-picker)--这个classname 是针对element-plus 的!
css
.no-atTheMoment .is-text.el-picker-panel__link-btn{
displey:none;
}
3. 如果想给这个el-date-picker 设置初始值
TypeScript
<script>
// 需要install dayjs这个插件
import dayjs from 'dayjs';
const form = reactive({
myTime:'';
});
onMounted(() => {
form.myTime = dayjs().format('YYYY-MM-DD HH:00:00');
})
</script>