WeChat Mini Program-Calendar
Idea analysis
To implement a calendar, you need to know several values:
How many days are there in the month
What day of the week is the first day of the month
According to common sense, we know that a month has a maximum of 31 days and a minimum of 28 days. If the calendar has 7 grids in a row, there will be 5 rows. However, if the first day of the month is a Saturday, there will be six rows of grids.
The applet has no concept of DOM operations, so it cannot dynamically insert the number of empty cells into the first day of the month. It can only be controlled by adding a loop of empty cells in front. For details, refer to the wxml file.
Calendar template introduction
The calendar template panel supports sliding left and right gestures;
Provides jumpToToday method to jump to today;
Set date to-do labels setTodoLabels;
Delete to-do labels for the specified date deleteTodoLabels;
Clear all date to-do labels clearTodoLabels;
Provide template template introduction
Introduce wxml and wxss
// example.wxml
<import src="../../template/calendar/index.wxml"/>
<view class="calendar-wrap">
<template is="calendar" data="{{...calendar}}" />
</view>
/* example.wxss */ @import '../../template/calendar/index.wxss';
Calendar component initialization
import initCalendar, { getSelectedDay, jumpToToday, setTodoLabels, deleteTodoLabels, clearTodoLabels } from '../../template/calendar/index'; const conf = { onShow: function() { initCalendar({ // multi: true, // Whether to enable multi-selection, // disablePastDay: true, // Whether to disable past dates/** * Events executed after selecting a date * @param { object } currentSelect The currently clicked date * @param { array } allSelectedDays All selected dates (The allSelectedDays parameter is only available when mulit is true) */ afterTapDay: (currentSelect, allSelectedDays) => { console.log('==================== ==========='); console.log('The current clicked date', currentSelect); console.log('Whether the current clicked date has an event mark: ', currentSelect.hasTodo || false );
allSelectedDays && console.log('all selected dates', allSelectedDays); console.log('getSelectedDay method', getSelectedDay());
}, /** * Date click event (this event will completely take over the click event) * @param { object } currentSelect The date of the current click * @param { object } event Date click event object */ // onTapDay(currentSelect, event) { // console.log(currentSelect); // console.log(event); // }, /** * Events are triggered after the initial rendering of the calendar, such as setting event markers */ afterCalendarRender() { setTodoLabels({
pos: 'bottom',
dotColor: '#40',
days: [{
Year: 2018,
month: 5,
day: 12,
}, {
Year: 2018,
month: 5,
day: 15,
}],
});
},
});
}, deleteTodo() { // Specify the date when the to-do label needs to be deleted deleteTodoLabels([{
Year: 2018,
month: 5,
day: 12,
}, {
Year: 2018,
month: 5,
day: 15,
}]); // clearTodoLabels(); }, /** * Jump to today */ jump() { jumpToToday();
},
}; Page(conf);
All resources on this site are contributed by netizens or reprinted by major download sites. Please check the integrity of the software yourself! All resources on this site are for learning reference only. Please do not use them for commercial purposes. Otherwise, you will be responsible for all consequences! If there is any infringement, please contact us to delete it. Contact information: admin@php.cn
Related Article
![Can C Code Be Decompiled, and How Accurate Are the Results?](https://img.php.cn/upload/article/001/246/273/173291731964932.jpg)
30 Nov 2024
Recovering Lost C Source Code: Exploring Decompilation OptionsLosing the source code to a C program can be frustrating, but it's not...
![How Can I Configure VS Code to Build C Programs with Multiple .cpp Files?](https://img.php.cn/upload/article/001/246/273/173478073495657.jpg)
21 Dec 2024
VS Code Builds C Programs with Multiple .cpp Source FilesWhen building a C program with multiple .cpp source files in Visual Studio Code, it's...
![Can I Decompile a Compiled Go Program?](https://img.php.cn/upload/article/001/246/273/173139912313791.jpg)
12 Nov 2024
Can I Decompile a Compiled Go Program?No, it is not possible to decompile a compiled Go program back into its original Go source code. Here's a...
![How to Build C Projects with Multiple .cpp Files in VS Code?](https://img.php.cn/upload/article/001/246/273/173585806045873.jpg)
03 Jan 2025
VS Code Unable to Build C Program with Multiple .cpp Source FilesOne of the common challenges in using VS Code for C development is building...
![First time here----smarty, first time here_PHP tutorial](/static/imghw/default1.png)
13 Jul 2016
New here - smarty, new here. First time here----smarty, first time here Smarty Day01-----Usage of smarty Function: Separate php html, program and art Usage: 1. Download the source code package 2. Directory structure libs source code file
![Can Go Programs Be Decompiled Back to Source Code?](https://img.php.cn/upload/article/001/246/273/173201491947318.jpg)
19 Nov 2024
Reverse Engineering Compiled Go ProgramsDecompiling a compiled program to its original source code is a challenging task. In the case of Go, the...
![Can anyone recommend an open source program with visual editing tools?_html/css_WEB-ITnose](/static/imghw/default1.png)
24 Jun 2016
Can anyone recommend an open source program with visual editing tools?
![Why does including a .cpp file instead of a .h file in C lead to errors?](https://img.php.cn/upload/article/001/246/273/173327767219987.jpg)
04 Dec 2024
Including Header Files versus Source CodeWhen working with multiple source files in a C program, it's crucial to understand the distinction...
![yii2 source code study notes (9), yii2 source code study notes_PHP tutorial](/static/imghw/default1.png)
12 Jul 2016
yii2 source code study notes (9), yii2 source code study notes. yii2 source code study notes (9), yii2 source code study notes Application is the base class of all application classes, let’s take a look at its source code. yii2baseApplication.php. 1 ? php 2 /*
![See all articles](/static/imghw/down_right.png)
![](/static/imghw/taglogo.png)
Hot Tools
![WeChat mini program demo: imitation mall](https://img.php.cn/upload/webcode/000/000/000/587dbb2750c82657.png)
WeChat mini program demo: imitation mall
WeChat mini program demo: imitating a mall, easy to get started, and has a good introduction to some basic functions of the mall
![Takeaway: Implement anchor-like functionality](https://img.php.cn/upload/webcode/000/000/000/587db82bf0392490.png)
Takeaway: Implement anchor-like functionality
It is the similar anchor function that everyone needs. In addition, it also implements the typical ordering functions of some takeout apps. It is recommended to study and study;
![WeChat mini program demo: Lezhu](https://img.php.cn/upload/webcode/000/000/000/587db8c2f3a51421.png)
WeChat mini program demo: Lezhu
WeChat mini program demo: Lezhu: similar to location-based; helpful application, somewhat similar to the spirit of Zhang Xiaolong’s mini program.
![WeChat mini program game demo selects different color blocks](https://img.php.cn/upload/webcode/000/000/000/587db4b7c7309646.png)
WeChat mini program game demo selects different color blocks
WeChat mini program game demo selects different color blocks
![WeChat applet demo: carousel image transformation](https://img.php.cn/upload/webcode/000/000/000/587db87c32a47793.png)
WeChat applet demo: carousel image transformation
Carousel chart style change, a simple carousel chart implemented with a small program, easy to write
![](/static/imghw/taglogo.png)