vue 日历插件ele-calendar

由于项目中需要一个日历功能我比较懒不想自己写所以就找了一插件,不过样式不符合要求自己又改了一下。

原版样式

组件原版

修改后样式

修改后

全局引入

npm install ele-calendar

组件中使用

//html部分
<template>
    <div>
        <div style="width: 335px;height: 600px;margin: 30px auto">
            <ele-calendar
                    :render-content="renderContent"
                    :data="datedef"
                    :prop="prop"
                    @pick="datePick"
                    @date-change="getMonth"
            ></ele-calendar>
        </div>
    </div>
</template>
// script 部分
<script>
    // 引入
    import eleCalendar from 'ele-calendar'
    import 'ele-calendar/dist/vue-calendar.css'
    export default {
        name: "ElementTest",
        data() {
            return {
                datedef: [
                    {"date": "2020-03-30", "content": null, "cid": null},
                    {"date": "2020-03-26", "content": null, "cid": null},
                ],
                prop: 'date' //对应日期字段名
            }
        },
        components: {
            eleCalendar
        },
        methods: {
       		// 通过render-content的渲染Function 自定义日历显示内容
            renderContent(h, parmas) {
            	// 自定义样式,我返回的是小点(橘黄色)
                const loop = (data) => {
                    return data.defvalue.value ? h('div',
                        [
                            h('div', data.defvalue.text), h('div',{
                            style: {
                                width: '4px',
                                height:'4px',
                                margin: '0 auto',
                                borderRadius: '4px',
                                backgroundColor:'red',
                            }
                        }, '')]) : h('div', [h('div', data.defvalue.text)
                        ]
                    )
                }
                return h('div', {
                    // 给div绑定样式
                    style: {
                        minHeight: '45px'
                    },
                    click() {
                    }
                }, [loop(parmas)])
            },
            // 获取点击的日期 返回为标准格式 使用date.get方法获取想要的数据
            datePick(date, event, row, dome) {     
            	console.log(date); // Tue Mar 03 2020 00:00:00 GMT+0800 (中国标准时间)        
                var d = new Date(date);
                console.log(d.getDate()); //  点击日
                console.log(d.getMonth() + 1);    // 点击月    
            },
            // 点击切换月/年按钮时返回的数据 格式为标准格式
            getMonth(data){
            	console.log(data); // Fri Apr 03 2020 00:00:00 GMT+0800 (中国标准时间)
                var d = new Date(data); // 点击月
                console.log(d.getMonth() + 1)
                //d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + 	
                //d.getSeconds()		// 标准时间转化       方法
            }
        }
    }
</script>

修改部分

.el-date-table-calendar td.current[data-v-55be3324]:not(.disabled) 格内样式
 color: #fff;
      background-color: #5cadff;
      border-radius: 50%;
.el-date-picker-calendar table    table 样式
 	padding: 10px;
    box-sizing: border-box;
    table-layout: fixed;
    width: 100%;
@date-change="getMonth" 年份月份点击绑定事件

原文地址: https://segmentfault.com/a/1190000015382208?utm_source=tag-newest
项目地址:https://github.com/xuyanming/ele-calendar

总结

感谢插件作者,让我这种懒人轻松了好多!分享一下,能帮到大家就很好了。
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
vue-ele-upload-image的使用方法如下: 1. 安装vue-ele-upload-image组件 你可以使用npm或者yarn来安装vue-ele-upload-image组件,具体命令如下: ``` npm install vue-ele-upload-image --save ``` 或者 ``` yarn add vue-ele-upload-image ``` 2. 引入vue-ele-upload-image组件 你可以在需要使用vue-ele-upload-image组件的地方引入该组件,具体代码如下: ```javascript import Vue from 'vue' import EleUploadImage from 'vue-ele-upload-image' Vue.use(EleUploadImage) ``` 3. 在模板中使用vue-ele-upload-image组件 你可以在模板中使用vue-ele-upload-image组件,具体代码如下: ```html <ele-upload-image :action="uploadUrl" :headers="uploadHeaders" :multiple="true" :limit="5" :size="1024 * 1024 * 2" :format="['jpg', 'jpeg', 'png']" :data="uploadData" :before-upload="beforeUpload" :on-success="onSuccess" :on-error="onError" :on-remove="onRemove" > <el-button type="primary">点击上传</el-button> </ele-upload-image> ``` 其中,各个参数的含义如下: - `action`:上传图片的地址。 - `headers`:上传图片时需要携带的请求头。 - `multiple`:是否支持多选图片,默认为false。 - `limit`:上传图片的最大数量,默认为1。 - `size`:上传图片的最大大小,默认为2MB。 - `format`:上传图片的格式限制,默认为['jpg', 'jpeg', 'png']。 - `data`:上传图片时需要携带的额外数据。 - `before-upload`:上传图片前的回调函数。 - `on-success`:上传图片成功的回调函数。 - `on-error`:上传图片失败的回调函数。 - `on-remove`:删除图片的回调函数。 以上就是vue-ele-upload-image组件的使用方法,希望能对你有所帮助。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值