微信小程式-日曆
思路分析
要實作一個行事曆,就需要先知道幾個值:
當月有多少天
當月第一天星期幾
根據常識我們得知,每月最多31天,最少28天,日曆一排7個格子,則會有5排,但若是該月第一天為星期六,則會產生六排格子才對。
小程式沒有DOM操作概念,故不能動態的往當月第一天的插入多少個空格子,只能透過在前面加入空格子的循環來控制,具體參考 wxml 檔案。
日曆範本引入
日曆模板面板支援 手勢左右滑動;
提供跳轉至今天方法jumpToToday;
設定日期待待辦事項標記 setTodoLabels;
刪除指定日期待待辦事項標記 deleteTodoLabels;
清空所有日期待待辦事項標記 clearTodoLabels;
提供 template 模板引入
引入wxml及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';
日曆組件初始化
import initCalendar, { getSelectedDay, jumpToToday, setTodoLabels, deleteTodoLabels, clearTodoLabels } from '../../template/calendar/index'; const conf = { onShow: function() { initCalendar({ //)是否開啟多選, // disablePastDay: true, // 是否禁選過去日期/** * 選擇日期後執行的事件 * @param { object } currentSelect 目前點擊的日期 * @param { array } allSelectedDays 選擇的所有日期(當mulit為true時,才有allSelectedDays參數) */ afterTapDay: (currentSelect, allSelectedDays) => { console.log('==================== ==========='); console.log('目前點選的日期', currentSelect); console.log('目前點選的日期是否有事件標記: ', currentSelect.hasTodo || false );
allSelectedDays && console.log('所有選擇的日期', allSelectedDays); console.log('getSelectedDay方法', getSelectedDay());
}, /** * 日期點選事件(此事件會完全接手點選事件) * @param { object } currentSelect 目前點選的日期 * @param { object } event 日期點選事件物件 */ // onTapDay(currentSelect, event) { // console.log(currentSelect); // console.log(event); // }, /** * 日曆初次渲染完成後觸發事件,如設定事件標記 */ afterCalendarRender() { setTodoLabels({
pos: 'bottom',
dotColor: '#40',
days: [{
year: 2018,
month: 5,
day: 12,
}, {
year: 2018,
month: 5,
day: 15,
}],
});
},
});
}, deleteTodo() { // 指定需要刪除待辦識別碼的日期 deleteTodoLabels([{
year: 2018,
month: 5,
day: 12,
}, {
year: 2018,
month: 5,
day: 15,
}]); // clearTodoLabels(); }, /** * 跳到今天 */ jump() { jumpToToday();
},
}; Page(conf);
本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn
相關文章
24 Jan 2017
從小程式誕生開始,就有很多人開始研習其機理與特點,從原始碼或整體架構的角度已經有很多不錯的文章會令人受益。但理論是一回事,真正理解小程序,還需要實踐,才能進一步理解其背後的想法,與已有平台的異同,以及如何去適應它,做出更有趣的小程序。
22 Apr 2017
摘要: 上期我們介紹了「微天氣」的API與介面程式碼編寫,今天我們繼續介紹邏輯層程式碼以及查詢程式碼的編寫。 本文選自《從零開始學習微信小程式開發》。
06 Jun 2017
雖然微信小程式應用程式越來越火熱,但是網路上公開分享的微信小程式原始碼不多,今天php中文網就為你推薦5個2017年最新的微信小程式完整原始碼供您免費下載使用!希望對您能有所幫助!
03 Sep 2018
這篇文章帶給大家的內容是關於簡單的微信小程式日曆組件的實現(附完整程式碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。號
15 May 2018
在開始開發應用號碼之前,先看看官方公佈的「小程式」教學吧! (以下內容來自微信官方公佈的“小程序”開髮指南) 本文檔將帶你一步步創建完成一個微信小程序,並可以在手機上體驗該小程序的實際效果。這個小程式的首頁將會顯示歡迎語以及目前使用者的微信頭像,點擊頭像,可以在新開的頁面中查看目前小程式的啟動日誌。
04 Apr 2017
微信小程式已經推出很久了,最近開始有時間搗鼓一下,由於從來沒有寫過任何前端代碼,所以這篇博文也是總結自己摸索調查的過程,希望對像我一樣前端0經驗的同學有所幫助。 1. 環境小程式發布流程如下圖: 1.1 微信認證根據使用者不同需求, 對註冊要求也不同: 企業開發者, 有企業註冊相關資訊, 可負擔500註冊費用, 為了小程式能發佈上線; 公司不給錢程式設計師, 有企業註冊資料, 不想支付費用, ...
Hot tools Tags
Hot Tools
微信小程式demo:仿商城
微信小程式demo:仿商城,上手簡單,對商城的一些基本的功能有很好的涉及
外帶:實現類似錨點功能
正是大家需要的類似錨點功能,另外也實現了一些外帶app的典型點菜功能,推薦學習研究;
微信小程式demo:樂助
微信小程式demo:樂助:類似基於地理位置的到位;助人應用,與張小龍的小程式精神有點相似。
微信小程式遊戲類demo挑選不同色塊
微信小程式遊戲類demo挑選不同色塊
微信小程式demo:輪播圖變換
輪播圖樣式變換,簡單的一個用小程式實現的輪播圖,寫法容易