挪動端H5周曆組件

文檔維護者:孫尊路

喜好的話,記得star 一下噢!

實用場景

  • 前些陣子,寫了一篇《日曆組件完成》的運用在線文檔,碰到一個需求:完成一個H5周向來填寫每周的事情日記,去網上查閱材料,發明許多示例也沒有一個規範的運用文檔,覺得用起來也費勁,於是乎,本身造了一個周曆組件,文章下面有很細緻的運用申明。 本篇連繫了現實的項目運用需求整理出來的,該文檔後面會延續優化更新。如有不足,也請人人多多指教,小編會實時改正!

實例展現

《挪動端H5周曆組件》

典範項目運用案例

  • 【挪動OA類】 我的日記

依靠資本

  • libs/calendar_base_week.js 周曆組件基類js庫,可以依據營業需求,恣意個性化,從而到達設想視覺效果

設置和運用要領

DOM構造

一個div即可

<div id="weekcalendar"></div>

初始化

以下代碼是最簡樸的用法,更多龐雜用法請參考calendarweek_showcase源碼下載

var weekcalendar = new CalendarWeek({
    // 默許周曆組件容器
    "container": "#weekcalendar",
    // 點擊日期事宜
    "onItemClick": function(item) {
        console.log(item.date + " " + item.week);
    },
    isDebug: false
});

參數申明

參數參數範例申明
containerstring或HTMLElement 必選 Calendar容器的css選擇器,比方“#calendar”。默許為#calendar
prestring或HTMLElement 可選 前一周按鈕的css選擇器或HTML元素。默許.pre
nextstring或HTMLElement 可選后一周按鈕的css選擇器或HTML元素。默許.next
dataRequestFunction 可選 回調函數,綁定營業數據。比方:某天有日程,則會在對應日期上標識出一個小紅點也許其他標識,默許傳入數據格式:data=[{"date":"2018-04-18"},{"date":"2018-04-17"},{"date":"2018-04-16"}]
onItemClickFunction 必選 回調函數,當你點擊或輕觸某日期 300ms后實行。回調日期效果:2018-04-07
templateFunction或String 可選,元素襯着的模板,可以是一個模板字符串,也可以是一個函數,為函數時,確保返回模板字符串,默許組件內置模板
isDebugBoolean 可選是不是開啟調試形式,默許false

API

天生的weekcalendar對象可以挪用以下API

var weekcalendar = new CalendarWeek(...);

refresh()

外部革新要領,重洗襯着當前周的列表數據。

weekcalendar.refresh();

slidePrev()

切換為上一周,與組件內部傳入參數pre作用一樣,該API支撐Promise異步勝利回調里處置懲罰本身的營業邏輯。

weekcalendar.slidePrev().then(...).then(...);

slideNext()

切換為下一周,與組件內部傳入參數next作用一樣,該API支撐Promise異步勝利回調里處置懲罰本身的營業邏輯。

weekcalendar.slideNext().then(...).then(...);

長處和優點

可以極大輕易現實項目上開發人員的上手運用,而且版本是不停依據現實項目上的需求舉行優化晉級的,開放源碼可以讓特別需求的項目開發人員舉行修正、補充和完美。

存在的不足之處

現在依靠js庫有多個(mustache.min.js、mui.min.js)主如果一些經常使用的挪動端js庫(無可厚非),包括組件的中心庫,也許有人以為影響加載速率之類的,實在已經有許多項目在運用效果還可以,固然了小編也正在勤奮剝離第三方js庫,思緒已經有了,只不過須要一點時候舉行代碼重構,若在此之前給你帶來的不方便,還請多多見諒,畢竟優化組件確切須要消費大批時候的。

    原文作者:writeoncerunanywhere
    原文地址: https://segmentfault.com/a/1190000014523824
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞