這期內容當中小編將會給大家?guī)碛嘘P怎么在小程序中實現(xiàn)一個日歷左右滑動效果,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)專注于沾化網站建設服務及定制,我們擁有豐富的企業(yè)做網站經驗。 熱誠為您提供沾化營銷型網站建設,沾化網站制作、沾化網頁設計、沾化網站官網定制、重慶小程序開發(fā)服務,打造沾化網絡公司原創(chuàng)品牌,更為您提供沾化網站排名全網營銷落地服務。
wxml
{{item.day}} {{item.month}}月 今日 {{item.week}}
js
// byjs_sun/pages/product/all/all.js Page({ /** * 頁面的初始數據 */ data: { dateList:[], //存放日期的數組 nowDate:'', //系統(tǒng)當前日期 }, // 格式化日期,時間 formatTime(date) { const year = date.getFullYear() const month = date.getMonth() + 1 const day = date.getDate() const hour = date.getHours() const minute = date.getMinutes() const second = date.getSeconds() return [year, month, day].map(this.formatNumber).join('/') + ' ' + [hour, minute, second].map(this.formatNumber).join(':') }, // 格式化數字 formatNumber(n) { n = n.toString() return n[1] ? n : '0' + n }, // 獲取日期詳情 getDateInfo(ts) { const date = new Date(ts); const weekArr = new Array("日", "一", "二", "三", "四", "五", "六"); const week = date.getDay(); let dateString = this.formatTime(date); let shortDateString = dateString.replace(/\//g, '-').substring(5, 10).replace(/-/g, '月') + "日"; if (date.getDate() < 10) { shortDateString = shortDateString.replace(/0/g, ''); } return { shortDateString, dateString, month: date.getMonth() + 1, day: date.getDate(), week: weekArr[week] } }, /** * 生命周期函數--監(jiān)聽頁面加載 */ onLoad: function (options) { var that = this; var myDate = new Date(); //獲取系統(tǒng)當前時間 var sysmonth = myDate.getMonth() + 1 var nowDate = myDate.getDate(); //當前是本月幾日 var today = myDate.toLocaleDateString(); //今日年月日 that.setData({ nowDate: nowDate, sysmonth: sysmonth }), console.log('系統(tǒng)日期:',myDate); console.log('系統(tǒng)日期(年/月/日):',today); console.log('系統(tǒng)日期(月):', sysmonth); console.log('系統(tǒng)日期(日):', nowDate); // 獲取屏幕寬度,設置每個日期寬度 wx.getSystemInfo({ success: (res) => { console.log(res); this.setData({ windowWidth: res.windowWidth, itemWidth: parseInt(res.windowWidth / 7) }); }, }) this.initData(); }, // 初始化日期 initData() { const nowDateTime = +new Date(); let dateList = []; for (let i = -30; i < 30; i++) { let obj = this.getDateInfo(nowDateTime + i * 24 * 60 * 60 * 1000); obj.isChoose = i == 0; dateList.push(obj); } this.setData({ dateList, clickIndex: 30, scrollLeftIndex: 30 }); }, // 點擊日期方法 clickDate(e) { var that = this; console.log('點擊日期攜帶的下標:', e.currentTarget.dataset.index); //當前的點擊的日期 var index = e.currentTarget.dataset.index; that.setData({ clickIndex: index }); // console.log(that.data.scrollLeftIndex); console.log('當前點擊日期:',that.data.dateList[index].shortDateString); //當前點擊的日期 // const { // index // } = e.currentTarget.dataset; // this.setData({ // clickIndex: index // }); // console.log(this.data.dateList[index]); }, })
樣式
.scroll-view { height: 200rpx; background-color: #313751; width: 100%; white-space: nowrap; } .item { height: 200rpx; display: inline-block; } .text-view { display: flex; align-items: center; justify-content: center; flex-direction: column; width: 100%; height: 100%; color: #fff; } .month { font-size: 30rpx; margin-top: 10rpx; } .week { font-size: 32rpx; margin-top: 10rpx; } .day { font-size: 32rpx; width: 60rpx; height: 60rpx; border-radius: 10rpx; text-align: center; line-height: 60rpx; margin-top: 20rpx; } /* 日期選中的樣式 */ .day-active { background-color: #FFB400; color: #fff; }
上述就是小編為大家分享的怎么在小程序中實現(xiàn)一個日歷左右滑動效果了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。