微信小程序中日歷/日期選擇插件怎么用

這篇文章給大家分享的是有關微信小程序中日歷/日期選擇插件怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

我們提供的服務有:網站設計制作、成都做網站、微信公眾號開發、網站優化、網站認證、鐘祥ssl等。為上千企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的鐘祥網站制作公司

具體內容如下

微信小程序中日歷/日期選擇插件怎么用

wxml

<view class="canlendarBgView">
 <view class="canlendarView">
  <view class="canlendarTopView">
   <view class="leftBgView" bindtap="handleCalendar" data-handle="prev">
    <view class="leftView">《</view>
   </view>
   <view class="centerView">{{cur_year || "--"}} 年 {{cur_month || "--"}} 月</view>
   <view class="rightBgView" bindtap="handleCalendar" data-handle="next">
    <view class="rightView">》</view>
   </view>
  </view>
  <view class="weekBgView">
   <view class="weekView" wx:for="{{weeks_ch}}" wx:key="{{index}}" data-idx="{{index}}">{{item}}</view>
  </view>
  <view class="dateBgView">
   <view wx:if="{{hasEmptyGrid}}" class="dateEmptyView" wx:for="{{empytGrids}}" wx:key="{{index}}" data-idx="{{index}}">
   </view>
   <view class="dateView" wx:for="{{days}}" wx:key="{{index}}" data-idx="{{index}}" bindtap="dateSelectAction">
    <view class="datesView {{index == todayIndex ? 'dateSelectView' : ''}}">{{item}}</view>
   </view>
  </view>
 </view>
 <view>點擊日期選擇</view>
</view>

js

//index.js
//獲取應用實例
Page({
 data: {
  hasEmptyGrid: false,
  cur_year: '',
  cur_month: '',
 },
 onLoad(options) {
  this.setNowDate();
 },
 
 dateSelectAction: function (e) {
  var cur_day = e.currentTarget.dataset.idx;
  this.setData({
   todayIndex: cur_day
  })
  console.log(`點擊的日期:${this.data.cur_year}年${this.data.cur_month}月${cur_day + 1}日`);
 },
 
 setNowDate: function () {
  const date = new Date();
  const cur_year = date.getFullYear();
  const cur_month = date.getMonth() + 1;
  const todayIndex = date.getDate() - 1;
  console.log(`日期:${todayIndex}`)
  const weeks_ch = ['日', '一', '二', '三', '四', '五', '六'];
  this.calculateEmptyGrids(cur_year, cur_month);
  this.calculateDays(cur_year, cur_month);
  this.setData({
   cur_year: cur_year,
   cur_month: cur_month,
   weeks_ch,
   todayIndex,
  })
 },
 
 getThisMonthDays(year, month) {
  return new Date(year, month, 0).getDate();
 },
 getFirstDayOfWeek(year, month) {
  return new Date(Date.UTC(year, month - 1, 1)).getDay();
 },
 calculateEmptyGrids(year, month) {
  const firstDayOfWeek = this.getFirstDayOfWeek(year, month);
  let empytGrids = [];
  if (firstDayOfWeek > 0) {
   for (let i = 0; i < firstDayOfWeek; i++) {
    empytGrids.push(i);
   }
   this.setData({
    hasEmptyGrid: true,
    empytGrids
   });
  } else {
   this.setData({
    hasEmptyGrid: false,
    empytGrids: []
   });
  }
 },
 calculateDays(year, month) {
  let days = [];
 
  const thisMonthDays = this.getThisMonthDays(year, month);
 
  for (let i = 1; i <= thisMonthDays; i++) {
   days.push(i);
  }
 
  this.setData({
   days
  });
 },
 handleCalendar(e) {
  const handle = e.currentTarget.dataset.handle;
  const cur_year = this.data.cur_year;
  const cur_month = this.data.cur_month;
  if (handle === 'prev') {
   let newMonth = cur_month - 1;
   let newYear = cur_year;
   if (newMonth < 1) {
    newYear = cur_year - 1;
    newMonth = 12;
   }
 
   this.calculateDays(newYear, newMonth);
   this.calculateEmptyGrids(newYear, newMonth);
 
   this.setData({
    cur_year: newYear,
    cur_month: newMonth
   })
 
  } else {
   let newMonth = cur_month + 1;
   let newYear = cur_year;
   if (newMonth > 12) {
    newYear = cur_year + 1;
    newMonth = 1;
   }
 
   this.calculateDays(newYear, newMonth);
   this.calculateEmptyGrids(newYear, newMonth);
 
   this.setData({
    cur_year: newYear,
    cur_month: newMonth
   })
  }
 }
})

感謝各位的閱讀!關于“微信小程序中日歷/日期選擇插件怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

分享標題:微信小程序中日歷/日期選擇插件怎么用
URL鏈接:http://m.kartarina.com/article32/jecdpc.html

成都網站建設公司_創新互聯,為您提供網站導航用戶體驗電子商務企業建站虛擬主機自適應網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

微信小程序開發
主站蜘蛛池模板: 日韩AV高清无码| 中字无码av电影在线观看网站 | 亚洲男人在线无码视频| 久久久久亚洲av成人无码电影| 国产精品无码一区二区三级| 无码人妻一区二区三区一 | 久久无码人妻一区二区三区午夜| 影音先锋中文无码一区| 亚洲精品无码av天堂| 亚洲精品无码久久久久APP| 日韩精品无码免费专区午夜 | 男男AV纯肉无码免费播放无码| 国产成人无码A区在线观看视频 | 久久久无码一区二区三区 | 亚洲AV永久无码精品| 无码人妻一区二区三区兔费| 亚洲av无码专区国产乱码在线观看 | 国产AV无码专区亚洲Av| 一本之道高清无码视频| 国产AV无码专区亚洲AV蜜芽| 久久亚洲精品无码aⅴ大香| 综合无码一区二区三区| 国产免费久久久久久无码| 久久无码av亚洲精品色午夜| 无码国产精品一区二区免费式影视 | 亚洲AV成人无码天堂| 亚洲AV无码第一区二区三区 | 亚洲av无码成人精品区一本二本 | 亚洲Av永久无码精品一区二区| 无码av最新无码av专区| 亚洲国产精品无码久久久不卡 | 国模无码一区二区三区不卡| 日韩人妻无码免费视频一区二区三区 | 亚洲ⅴ国产v天堂a无码二区| 亚洲国产精品成人精品无码区 | 亚洲AV无码一区二区三区牛牛| 免费无遮挡无码永久视频| 精品欧洲av无码一区二区14| 制服在线无码专区| 国产精品无码2021在线观看| 国外AV无码精品国产精品|