前言
在使用 element 框架时,总是会有一些满足不了现有项目需求的问题,这个时候就需要我们对 element 的组件进行改造,最近有一个需求就是要求日期组件只能选择年月日时,不要分钟和秒,找了一圈,发现 element 并没有相关的组件或者属性可以支持,这个时候就需要我们对其进行改造。
本章用到的属性
属性 | 描述 | 类型 |
---|---|---|
format | 显示在输入框中的格式(yyyy-MM-dd HH:mm:ss) | string |
value-format | 绑定值的格式。不指定则绑定值为 Date 对象 | string |
只能选择小时
只能选择到小时,最简单的方法就是通过 css
改变样式配合 element
日期组件的 format
属性来实现这个效果。
<template>
<div>
<el-date-picker v-model="timeValue" format="yyyy-MM-dd HH" value-format="yyyy-MM-dd HH" type="datetime">
</el-date-picker>
<el-button type="primary" @click="submitOn">提交</el-button>
</div>
</template>
<script>
export default {
data() {
return {
timeValue: "",
};
},
methods: {
submitOn() {
console.log(this.timeValue);
},
},
};
</script>
<style scope>
.el-time-spinner__wrapper {
width: 100% !important;
}
</style>
只能选择小时实现效果
只能选择小时、分钟
选择到小时、分钟,我们则可以直接通过 format
和 value-format
属性直接实现。
<template>
<div>
<el-date-picker v-model="timeValue" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" type="datetime">
</el-date-picker>
<el-button type="primary" @click="submitOn">提交</el-button>
</div>
</template>
<script>
export default {
data() {
return {
timeValue: "",
};
},
methods: {
submitOn() {
console.log(this.timeValue);
},
},
};
</script>
只能选择小时、分钟实现效果