文章目录
1. 安装scss
npm i -D sass-loader@8.0.2
npm i node-sass@4.14.1
2. 安装日历组件
npm i vue-calendar-component --save
3. 安装提示组件
npm install --save vue-component-toast
4. 注册组件
main.js
import toast from 'vue-component-toast'
import 'vue-component-toast/dist/css/vc-toast.min.css'
// Vue.use(toast, [<global-option>])
Vue.use(toast)
5. 页面
<template>
<div class="content">
<Calendar
ref="Calendar"
:markDateMore="arr"
:markDate="arr2"
v-on:isToday="clickToday"
agoDayHide="1530115221"
v-on:choseDay="clickDay"
v-on:changeMonth="changeDate"
></Calendar>
<br>
<div class="choseMonth-style" style="background-color: #398ade;" @click="ChoseMonthChock ">点击跳到2022-01-21</div>
</div>
</template>
<script>
import Calendar from "vue-calendar-component";
export default {
data() {
return {
arr2: [],
arr: [
{
date: "2022/01/1",
className: "mark1"
},
{
date: "2022/01/13",
className: "mark2"
}
]
};
},
components: {
Calendar
},
methods: {
clickDay(data) {
console.log("选中了", data); //选中某天
this.$toast("选中了" + data);
},
clickToday(data) {
console.log("跳到了本月今天", data); //跳到了本月
},
changeDate(data) {
this.$toast("切换到的月份为" + data);
console.log("左右点击切换月份", data); //左右点击切换月份
},
ChoseMonthChock() {
this.$refs.Calendar.ChoseMonth("2018-12-13"); //跳到12月12日选中12月12日
}
},
created() {
function format(date, index) {
date = new Date(date);
return `${date.getFullYear()}-${date.getMonth() + 1}-${index}`;
}
// setTimeout(() => {
// this.arr = [
// {
// date: format(new Date(), 3),
// className: "mark1"
// },
// {
// date: format(new Date(), 12),
// className: "mark2"
// }
// ];
// this.arr.push({
// date: format(new Date(), 15),
// className: "mark1"
// });
// }, 300);
}
};
</script>
<style scoped>
/* 重写css部分 start */
/deep/ .wh_content_item {
color: black;
}
/deep/ .wh_top_changge li {
color: black;
}
/deep/ .wh_jiantou1 {
border-top: 2px solid #030303;
border-left: 2px solid #030303;
}
/deep/ .wh_jiantou2 {
border-top: 2px solid #030303;
border-right: 2px solid #030303;
}
/deep/ .wh_jiantou1 {
background-color: white;
}
/deep/ .wh_content_all {
background-color: #ffffff
}
/deep/ .wh_content_item .wh_isToday {
background-color: #2b85e4
}
/deep/ .wh_content_item .wh_chose_day {
background-color: #9acafc;
}
/* 重写css部分 end */
h3 {
text-align: center;
width: 90%;
margin: auto;
}
.choseMonth-style {
margin: auto;
width: 220px;
height: 44px;
line-height: 44px;
/*background: #0fc37c;*/
color: #fff;
font-size: 17px;
text-align: center;
margin-top: 20px;
}
.wh_container >>> .mark1 {
background-color: orange;
}
.wh_container >>> .mark2 {
background-color: blue;
}
.wh_content_item > .wh_isMark {
background: orange;
}
</style>