小程序手寫指么,酒店價格日歷,roomcalendar

https://blog.csdn.net/qq_22718203/article/details/103505339

調(diào)接口榴鼎,返回的是一個日歷的數(shù)組伯诬,拿這些數(shù)據(jù),去渲染日歷


<view class="tac bg_ffffff">

? ? <view class="week fz28 padtb20 border_bot" id="week">

? ? ? <view :class="[idx===0||idx===6 ? 'relax':'','week-item']" v-for="(item,idx) inweek_list" :key="idx">{{item}}

? ? <scroll-view :scroll-y="true" style="height:70vh">

? ? ? <view class="month-block fz28" v-for="(canlendar_item,index) in canlendar_data" :key="index">


? ? ? ? <view class="fz28 bg_eeeeee tac lh60">{{canlendar_item[0].title}}

? ? ? ? <view class="month-content">

? ? ? ? ? <view :class="[ item.valid==1 ? '':'color_999','month-day',in_date===item.date?'startActive':'',out_date===item.date? 'startActive':'',in_date

? ? ? ? ? ? ? ? :data-available="item.valid" :data-fulldate="item.date" v-for="(item,dd) in canlendar_item" :key="item.date">

? ? ? ? ? ? {{item.day ? item.day : ''}}

<block v-if="item.price>0">

? ? ? ? ? ? ? <view :class="[item.valid==1 ? '' : 'color_999','lh26 fz20']">{{RMB}}{{item.price}}

? ? ? ? ? ? <view class="fz20" style="height: 36rpx;line-height: 36rpx;">

? ? ? ? ? ? ? <block v-if="in_date===item.date">

? ? ? ? ? ? ? ? {{in_date===item.date ? '入住' : ''}}

? ? ? ? ? ? ? <block v-if="out_date===item.date">

? ? ? ? ? ? ? ? {{out_date===item.date ? '離店' : ''}}



? import httpsfrom '@/utils/common';

? const {RMB,get}=https;

? import {imgObj}from '@/utils/imgs';

export default {

props: ['canlendar_data','all_unvalid','checkdate'],

? data () {

return {

RMB:RMB,

? ? ? ? imgObj:imgObj,

? ? ? ? week_list: ['日','一','二','三','四','五','六'],

? ? ? ? in_date:'',//選擇的日期

? ? ? ? out_date:''

? ? }

},

mounted(){

let {check_date}=this.$store.state;

? ? if(check_date.check_in && check_date.check_in.length>0){

this.in_date=check_date.check_in[0]+'-'+check_date.check_in[1]+'-'+check_date.check_in[2];

? ? ? ? this.out_date=check_date.check_out[0]+'-'+check_date.check_out[1]+'-'+check_date.check_out[2]

}

},

watch:{

checkdate(newval,oldval){

let check_date=newval;

? ? ? ? if(check_date.check_in && check_date.check_in.length>0){

this.in_date=check_date.check_in[0]+'-'+check_date.check_in[1]+'-'+check_date.check_in[2];

? ? ? ? ? ? this.out_date=check_date.check_out[0]+'-'+check_date.check_out[1]+'-'+check_date.check_out[2]

}

}

},

? methods:{

getAllTime(starDay, endDay){

var arr = [];

? ? ? ? ? var dates = [];

? ? ? ? ? // 設(shè)置兩個日期UTC時間

? ? ? ? ? var db =new Date(starDay);

? ? ? ? ? var de =new Date(endDay);

? ? ? ? ? // 獲取兩個日期GTM時間

? ? ? ? ? var s = db.getTime() -24 *60 *60 *1000;

? ? ? ? ? var d = de.getTime() -24 *60 *60 *1000;

? ? ? ? ? // 獲取到兩個日期之間的每一天的毫秒數(shù)

? ? ? ? ? for (var i = s; i <= d;) {

i = i +24 *60 *60 *1000;

? ? ? ? ? ? ? arr.push(parseInt(i))

}

// 獲取每一天的時間? YY-MM-DD

? ? ? ? ? for(var jin arr ){

var time =new Date(arr[j]);

? ? ? ? ? ? ? var year = time.getFullYear(time);

? ? ? ? ? ? ? var mouth = (time.getMonth() +1)>=10?(time.getMonth() +1):('0'+(time.getMonth() +1));

? ? ? ? ? ? ? var day = time.getDate()>=10?time.getDate():('0'+time.getDate());

? ? ? ? ? ? ? var YYMMDD = year +'-' + mouth +'-' + day;

? ? ? ? ? ? ? dates.push(YYMMDD)

}

return dates

},

? ? ? chooseDate(e) {

//this.validAll();

? ? ? ? ? const available = e.currentTarget.dataset.available;

? ? ? ? ? const fullDate = e.currentTarget.dataset.fulldate;

? ? ? ? ? let inTime=this.in_date,outTime=this.out_date;

? ? ? ? ? if(available==1) {

if (inTime =='' || (new Date(fullDate) <=new Date(inTime)) || outTime !='') {//選擇開始時間

? ? ? ? ? ? ? ? ? this.in_date=fullDate;

? ? ? ? ? ? ? ? ? this.out_date='';

? ? ? ? ? ? ? }else{//選擇結(jié)束時間

? ? ? ? ? ? ? ? let arr=this.getAllTime(this.in_date,fullDate),flag=false;

? ? ? ? ? ? ? ? for(let j=0;j

if(this.all_unvalid.includes(arr[j])){

flag=true

? ? ? ? ? ? ? ? ? }

}

if(flag){//判斷中間是否巫财,有滿房

? ? ? ? ? ? ? ? ? ? wx.showToast({

title:'中間有不可選日期盗似!',

? ? ? ? ? ? ? ? ? ? ? ? icon:'none',

? ? ? ? ? ? ? ? ? ? ? ? duration:2000

? ? ? ? ? ? ? ? ? ? })

this.in_date='';

? ? ? ? ? ? ? ? ? ? this.out_date='';

? ? ? ? ? ? ? ? }else{

this.out_date=fullDate;

? ? ? ? ? ? ? ? ? ? this.$emit('select',inTime,fullDate);

? ? ? ? ? ? ? ? }

}

}else{

return false;

? ? ? ? ? }

},

? }

}

? @import "../styles/freecalendar.less";

? .lh26{line-height:26rpx;}

.range_bg{background:#FFF9F2;}

</style>

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

createhotel.vue 頁面

getFirstDayOfMonth(year,month) {

return new Date(year, month -1, 1).getDay();

},

getEmptyGrids(year,month) {

// FirstDayOfMonth代表本月的第一天是星期幾

? ? const FirstDayOfMonth =this.getFirstDayOfMonth(year, month);

? ? let emptyGrids = [];

? ? // 有空格的情況

? ? if (FirstDayOfMonth >0) {

for (let i =0; i < FirstDayOfMonth; i++) {

emptyGrids.push({

'title': year+'年'+month+'月',

? ? ? ? ? ? ? ? 'fullDate':'x'? //x是我自己定義的一個值,代表沒有日期

? ? ? ? ? ? });

? ? ? ? }

// 將空格放入數(shù)組

? ? ? ? return emptyGrids;

? ? }else{

// 否則返回一個新數(shù)組

? ? ? ? return [];

? ? }

},

fillCalendar(n) {

let canlendar_data = [];

? ? for (let i =0; i < n; i++) {

let peryear=cale_origin[i][0].date.slice(0,4),permonty=cale_origin[i][0].date.slice(5,7);

? ? ? ? let EmptyGrids =this.getEmptyGrids(peryear, permonty);

? ? ? ? let item=cale_origin[i];

? ? ? ? let brr=EmptyGrids

for(let j=0;j

let theitem=cale_origin[i][j];

? ? ? ? ? ? theitem.title=peryear+'年'+permonty+'月';

? ? ? ? ? ? theitem.day=theitem.date.slice(8);

? ? ? ? ? ? brr.push(cale_origin[i][j])

}

canlendar_data.push(brr);

? ? ? ? //console.log(canlendar_data);

? ? }

this.canlendar_data=canlendar_data;

},

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末平项,一起剝皮案震驚了整個濱河市赫舒,隨后出現(xiàn)的幾起案子悍及,更是在濱河造成了極大的恐慌,老刑警劉巖接癌,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件心赶,死亡現(xiàn)場離奇詭異,居然都是意外死亡缺猛,警方通過查閱死者的電腦和手機缨叫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來荔燎,“玉大人耻姥,你說我怎么就攤上這事∮凶桑” “怎么了树绩?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵崇堰,是天一觀的道長辞色。 經(jīng)常有香客問我订讼,道長,這世上最難降的妖魔是什么征讲? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任据某,我火速辦了婚禮,結(jié)果婚禮上诗箍,老公的妹妹穿的比我還像新娘癣籽。我一直安慰自己,他們只是感情好滤祖,可當我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布筷狼。 她就那樣靜靜地躺著,像睡著了一般匠童。 火紅的嫁衣襯著肌膚如雪埂材。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天汤求,我揣著相機與錄音俏险,去河邊找鬼。 笑死扬绪,一個胖子當著我的面吹牛竖独,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播挤牛,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼莹痢,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起竞膳,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤航瞭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后顶猜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體沧奴,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年长窄,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片纲菌。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡挠日,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出翰舌,到底是詐尸還是另有隱情嚣潜,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布椅贱,位于F島的核電站懂算,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏庇麦。R本人自食惡果不足惜计技,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望山橄。 院中可真熱鬧垮媒,春花似錦、人聲如沸航棱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饮醇。三九已至它抱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間朴艰,已是汗流浹背观蓄。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留呵晚,地道東北人蜘腌。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像饵隙,于是被迫代替她去往敵國和親撮珠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容