鍕囨暍鐨勫皬浼欎即浠ぇ瀹跺ソ锛屾垜鏄綘浠彛涓殑澶х帇灏忎簲锛岃韩浣撳仴搴凤紝鑴戝瓙娌$梾銆傛垜鏈変赴瀵岀殑鑴卞彂鎶€宸э紝鍙互璁╀綘杞溂鎴愪负璧勬繁鍚嶄汉銆傚啓鍒版病鐢ㄦ槸鎴戠殑涓昏鐩殑锛屾寫鍓旀槸鎴戠殑鐗圭偣銆傛垜鐨勮唉閫婁腑閫忕潃涓€涓濆潥闊с€傚偦鏄垜鏈€澶х殑瀹夋叞銆傛杩庢敹鐪嬪皬鍚寸殑闅忕瑪绯诲垪瀹炴垬鏁欏浣犵敤VUE灏佽浜嗘棩鍘嗙粍浠躲€傚弻鎵嬪啓鍦ㄥ墠闈紝鎻愪緵浠g爜閾炬帴锛氫紶閫侀棬-ajun568鍙岃剼鎻愪緵鏈€缁堟晥鏋滃浘锛氶渶姹傚垎鏋愰渶姹傚垎鏋愭棤闈炲氨鏄竴涓€愭笎鎻愮偧鑷繁鎯宠鐨勪笢瑗跨殑杩囩▼锛屾瘯绔熻皝涔熷挰涓嶅姩鎴戜滑鍚冧簡涓€涓ぇ铔嬬硶锛屾墍浠ユ垜浠妸铔嬬硶鍒囧紑涓€鐐逛竴鐐瑰湴鍚冨惂銆備笅闈㈡牴鎹叿浣撳満鏅疄鐜颁竴涓熀鏈殑鏃ュ巻缁勪欢銆傛垜澶╄祴涓嶉珮锛屽笇鏈涗綘娣″畾銆傛杩庡悇浣嶅ぇ绁炵暀瑷€鎸囨暀銆傚満鏅細鍦ㄧЩ鍔ㄧ锛岄€氳繃鍒囨崲鏃ユ湡鏉ュ垏鎹㈡敹鍏ユ暟鎹€傛樉绀哄舰寮忎负涓婂眰鏃ュ巻锛屼笅灞傚搴旀暟鎹紝浠呮樉绀烘瘡鏃ユ暟鎹€傚熀浜庤繖涓満鏅紝鎴戜滑瀵规棩鍘嗗姛鑳借繘琛岄渶姹傚垎鏋愩€備竴鑸満鏅笅锛屾垜浠洿鍠滄褰撳墠鏃ユ湡鍦ㄦ鍩虹涓婏紝绗竴涓潯鐩簲璇ユ樉绀哄綋鍓嶆湀浠斤紝閫夋嫨鐨勬棩鏈熸槸浠婂ぉ閫夋嫨鐨勬棩鏈燂紝搴旇鍙互鍑嗙‘鍒囨崲锛屽惁鍒欙紝杩欐牱鍋氭湁浠€涔堢敤锛屽綋馃尮鐡跺瓙锛熷垏鎹㈡湀浠戒互鏌ョ湅鏇村鏁版嵁銆傚満鏅互鎵嬫満婊戝姩鍒囨崲鍒颁笂涓湀锛屽悜鍙虫粦鍔ㄥ垏鎹㈠埌涓嬩釜鏈堛€傛粦鍔ㄥ垏鎹㈡湀浠藉悗锛屽湪绉诲姩绔€夋嫨褰撴湀1鍙风殑灞曠ず鍖哄煙鏄潪甯告湁浠峰€肩殑锛屽鍑忓皯鍗犵敤绌洪棿鏋佷负閲嶈銆傝繖鏃跺€欙紝鍛ㄨ鍥惧氨娲句笂鐢ㄥ満浜嗐€傛偍鍙互鍚戜笂婊戝姩鍒囨崲鍒板懆瑙嗗浘锛屽悜涓嬫粦鍔ㄥ垏鎹㈠洖鏈堣鍥俱€傛竻绌烘湀瑙嗗浘婊戝姩鍒囨崲鏈堬紝鍛ㄨ鍥炬粦鍔ㄥ垏鎹㈠懆銆傛粦鍔ㄥ垏鎹㈠懆鍚庯紝閫夋嫨绗竴澶╋紝濡傛灉宸︽粦鍒囨崲鍚庢湁1鍙凤紝鍒欓€夋嫨1鍙风殑缁撴瀯鏍峰紡锛屽厛鎷嗗垎鏃ュ巻銆傚彲浠ユ媶鎴愪袱閮ㄥ垎锛屼笂鍗婇儴鍒嗘槸鍛紝涓嬪崐閮ㄥ垎鏄暟鎹€傚垪鏁伴檺鍒朵负姣忓懆7澶?鍒楋紝琛屾暟浼氶殢鐫€鏈堜唤鐨勫ぉ鏁板拰1鏃ョ殑浣嶇疆鑰屽彉鍖栥€傜Щ鍔ㄧ涔熻鏍规嵁灞忓箷瀹藉害閫傞厤甯冨眬銆傚脊鎬у竷灞€鏄竴涓笉閿欑殑閫夋嫨銆傛垜浠潵妯℃嫙鏁版嵁閮ㄥ垎锛岄鍏堝垱寤轰竴涓暱搴︿负40锛屾墍鏈夋暟鎹负0鐨勬暟缁勫涓嬶細constdataArr=Array(40).fill(0,0,40)鐜板湪锛屾垜浠鍦ㄦ瘡涓€琛屼腑鏄剧ず7涓」鐩苟渚濇鍚戜笅绉诲姩瀹冧滑銆傛兂涓€鎯筹紝濡傛灉鏄綘锛屼綘浼氭€庝箞鍋氾紵鐖跺厓绱犻泦flex-direction锛氱敤浜庡畾涔変富杞存柟鍚慺lex-wrap锛氱敤浜庡畾涔夋槸鍚﹀寘瑁筬lex-flow锛氬悓鏃跺畾涔塮lex-direction鍜宖lex-wrap瀛愬厓绱犺缃甪lex-basis锛氱敤浜庤缃甪lexbasis鍊硷紝鍙互璁剧疆鍏蜂綋鐨勫搴︽垨鐧惧垎姣旓紝榛樿鍊间负autoflex-grow锛氱敤浜庤缃缉鏀炬瘮渚嬶紝榛樿涓?锛屽鏋滄湁鍓╀綑绌洪棿锛屽厓绱犱笉浼氭斁澶lex-shrink锛氱敤浜庤缃缉灏忔瘮渚嬶紝榛樿涓?锛屽鏋滅┖闂翠笉澶燂紝浼氭寜姣斾緥缂╁皬銆傚鏋滆缃负0锛屽垯涓嶄細鏀剁缉flex:flex-grow,flex-shrink鍜宖lex-basis鐨勭畝鍐欑患涓婃墍杩帮紝鎴戜滑鍙互灏嗘牱寮忚缃负馃憠馃徏parentflex:rowwrapchildflex:0014.285%(1/7鈮?4.285%)鏁堟灉鍥攫煈囦唬鐮佺墖娈叼煈囪繖鏃跺€欏彲浠ュ姞涓€灞傜粨鏋勶紝璁╁瓙鍏冪礌鐨勫楂樺浐瀹氫负40鉁栵笍40锛屾柟渚垮鐞嗛€変腑鐨勯鏍笺€傪煈囧嚟绌烘樉绀哄綋鍓嶆湀浠藉拰鎵€閫夋棩鏈燂紝鐩存帴涓婁紶鍥剧墖鎬庝箞浼氬緢鐩磋锛屽氨鍍忚€佹澘鐢荤殑铔嬬硶涓€鏍凤紝鎬庝箞鍙兘鏄湡鐨勷煈忥紝閭f垜浠氨杩涗竴姝ュ垎鏋愪笅涓嬪浘锛屽浘鐗囨槸鎴戠殑鎵嬫満鏃ュ巻琛ㄩ鍏堬紝鐢变簬榛樿閫夋嫨浜嗕粖澶╋紝鎵€浠ユ垜浠厛鑾峰彇褰撳墠鏃ユ湡//鑾峰彇褰撳墠鏃ユ湡getCurrentDate(){this.selectData={year:newDate().getFullYear(),鏈?newDate()銆俫etMonth()+1,day:newDate().getDate(),}}鎴戜滑鐪嬭繖寮犲浘锛屼笉绠¤摑妗嗛噷鐨勯儴鍒嗭紝瑕佹樉绀烘湀浠界殑鏃ユ湡锛屾垜浠彧闇€瑕佺煡閬撲笅闈袱涓偣锛岀劧鍚庡仛涓€涓猣or寰幆灏辫浜嗐€傚綋鏈堢殑绗竴澶╁簲鏄剧ず褰撴湀鐨勫ぉ鏁般€傜湅鐪嬶紝鏄笉鏄緢绠€鍗曪紒涓嶈澶畝鍗曚簡銆傚崄涓€鏃ヤ笉鍧忊€濓紝姣忓勾闄や簡闂板勾鐨勪簩鏈堬紝鍏朵綑鏈堜唤鐨勫ぉ鏁伴兘鏄浐瀹氱殑锛岃繖鏍风湅锛屼笉灏辨槸閫氳繃鍖哄垎涓嬩竴涓簩鏈堟潵瀹屾垚鐨勫悧锛焎onst{year}=this.selectDataletdaysInMonth=[31,28,31,30,31,30,31,31,30,31,30,31]if((骞?4===0&&骞?100!==0)||骞?400===0){//闂板勾澶勭悊daysInMonth[1]=29}鏈堝垵涓€鐨勪綅缃垜鎯崇煡閬撴湀鍒濅竴鐨勪綅缃€備互涓嶅悓鐨勬柟寮忔€濊€冦€備簨瀹炰笂锛屾垜鎯崇煡閬撴瘡涓湀鐨勭涓€澶╂槸鏄熸湡鍑犮€傚挦锛岃繖涓嶆槸宸у悎鍚楋紵鑾峰彇褰撴湀绗竴澶╃殑鏃ユ湡getDay()涓嶅氨缁撴潫浜嗗悧锛焎onst{year,month}=this.selectDataconstmonthStartWeekDay=newDate(year,month-1,1).getDay()鎺ヤ笅鏉ユ垜浠~鍏ユ暟鎹紝鍓嶅悗鍋氱┖鐧藉鐞嗭紝浠g爜鍙婃晥鏋滃涓?馃鈥嶁檪锔忎唬鐮侌煣熲€嶁檪锔忓浘鐗囨棩鏈熷垏鎹㈠拰鏈堜唤鍒囨崲Dateswitch=鏇存敼褰撳墠鏁扮粍涓瓙鍏冪礌鐨刬sSelected//鍒囨崲閫変腑鏃ユ湡checkoutDate(selectData){if(selectData.type!=='normal')return//闈炴湁鏁堟棩鏈熶笉鑳借閫変腑this.selectData.day=selectData.day//缁欓€変腑鐨勬棩鏈熻祴鍊?/鏌ユ壘褰撳墠閫変腑鏃ユ湡鐨勭储寮昪onstoldSelectIndex=this.dataArr.findIndex(item=>item.isSelected&&item.type==='normal')//鏌ユ壘鏂扮殑鍒囨崲鏃ユ湡鐨勭储寮曪紙鎻愮ず锛氳繖閲屼篃鍙互鐩存帴浼犵储寮曞€?>绱㈠紩锛塩onstnewSelectIndex=this.dataArr.findIndex(item=>item.day===selectData.day&&item.type==='normal')//鏀瑰彉isSelected鍊糹f(this.dataArr[oldSelectIndex])this.$set(this.dataArr[oldSelectInd)ex],'isSelected',false)if(this.dataArr[newSelectIndex])this.$set(this.dataArr[newSelectIndex],'isSelected',true)}monthswitch=閲嶆柊鐢熸垚鏂扮殑鏈堜唤瀵瑰簲dataArr锛屽苟閫夋嫨褰撴湀鐨?鍙锋彁绀猴細杩欓噷闇€瑕佹敞鎰忕殑鏄紝涓婃湀鏄?鏈堬紝涓嬫湀鏄?2鏈堬紝渚嬪涓婃湀锛歝heckoutPreMonth(){let{year,month,day}=this.selectDataif(month===1){year-=1month=12}else{month-=1}this.selectData={year,month,day:1}this.dataArr=this.getMonthData(this.selectData)}锛屼粖澶ヽheckoutCurrentDate(){this.getCurrentDate()this.dataArr=this.getMonthData(this.selectData)}锛屽埌姝や负姝紝涓€涓熀鏈殑鏈堣鍥惧凡缁忓疄鐜颁簡婊戝姩鍒囨湀鎺ヤ笅鏉ワ紝鎴戜滑鏉ュ疄鐜版湀瑙嗗浘浼樺寲锛屽鍔犳粦鍔ㄥ垏鏈堝姛鑳姐€傚厛鏉ョ湅鐪嬫晥鏋滒煈囦互宸︽粦涓轰緥锛氬湪婊戝姩杩囩▼涓紝鍙互鐪嬪埌涓嬩釜鏈堢殑閮ㄥ垎鏁版嵁婊戝姩璺濈杩囧皬锛岃嚜鍔ㄥ脊鍥炲綋鍓嶈鍥炬粦杩囦竴瀹氳窛绂伙紝鑷姩婊戝埌涓嬩釜鏈堥渶瑕佸伐鍏枫€傝瑙﹀彂婊戝姩浜嬩欢锛岄鍏堣鎵惧埌瀵瑰簲鐨勫伐鍏穞ouchstart锛氭墜鎸囪Е鎽稿睆骞曟椂瑙﹀彂touchmove锛氭墜鎸囧湪灞忓箷涓婃嫋鍔ㄦ椂瑙﹀彂touchend锛氭墜鎸囩寮€灞忓箷鏃跺崟鐙Е鍙戣繖涓簨浠讹紝鏄笉鍙兘鐨勬粦鍔ㄨ繃绋嬩腑鐪嬪埌涓嬩釜鏈堢殑閮ㄥ垎鏁版嵁銆傚鏋滄兂鐪嬪埌婊戝姩杩囩▼涓殑鏁版嵁锛岃繖鏄竴涓吀鍨嬬殑杞挱鍦烘櫙銆傚畠鏈川涓婃槸涓€涓浆鎹㈣繃绋嬨€傛鏃讹紝鎴戜滑灏哾ataArr鐨勯〉闈㈢粨鏋勭敱鍗曞眰寰幆璋冩暣涓哄弻灞傚惊鐜ā寮忥紝鏈川涓婂氨鏄笂鍥炬墍绀虹殑[pre,current,next]鏁扮粍銆傛姝ラ娑夊強澶ч噺浠g爜鏇存敼銆侼ext涓昏鏄€氳繃鏂板紩鍏ョ殑鍙橀噺鏉ョ悊娓呮€濊矾锛屾€濊矾娓呮櫚浜嗭紝浠g爜涔熷氨缃簡锛岎煈€璧板惂锛屽姞娌瑰疂璐濓紒allDataArr:[],//CarouselarrayisSelectedCurrentDate:false,//鏄惁鏄€変腑涓庡惁鏈堜唤鏃ユ湡translateIndex:0,//杞挱浣嶇疆transitionDuration:0.3,//AnimationdurationneedAnimation:true,//宸﹀彸婊戝姩鏄惁闇€瑕佸姩鐢籭sTouching:false,//鏄惁涓烘粦鍔ㄧ姸鎬乼ouchStartPositionX:null,//鍒濆婊戝姩X鍊紅ouchStartPositionY:null,//鍒濆婊戝姩Y鍊紅ouch:{//杩欎釜瑙︽懜浜嬩欢锛屾按骞冲拰鍨傜洿婊戝姩璺濈鐨勭櫨鍒嗘瘮x:0,y:0,},allDataArr-Carousel鏁扮粍鉂撲粈涔堟椂鍊欑粰杩欎釜鏁扮粍璧嬪€拣焻帮笍[pre,current,next]涓换鎰忎竴涓€兼敼鍙樻椂time锛岃€屼笖pre鍜宯ext鐨勫彉鍖栨槸闄勫姞鍦╟urrent鐨勫彉鍖栦笂鐨勶紝鍝囷紝鏈夋剰鎬濓紒watchwatchwatch!!!isSelectedCurrentDate-鏄惁閫夋嫨褰撴湀鏃ユ湡鈥嬧€嬧潛褰撶偣鍑诲垏鎹㈡暟鎹椂锛屽洜涓篿sSelected鐨勬敼鍙橈紝watch鐩戝惉骞舵墽琛孉ssignment鎿嶄綔锛屼絾鏄鏃朵笉闇€瑕侀噸鏂扮敓鎴恜re鍜宯exttranslateIndex-杞挱鐨勪綅缃敤浜庢帶鍒秔re,current,next浣嶇疆锛岃Е鍙戞粦鍔ㄦ湀浠芥椂锛岄€氳繃鏀瑰彉translateIndex鏀瑰彉浣嶇疆銆傞噸鏂拌祴鍊兼椂鎭㈠涓哄垵濮嬪€笺€倀ouchStartPositionX銆乼ouchStartPositionY銆乼ouch鐢ㄤ簬鍒ゆ柇婊戝姩鐨勬柟鍚戝拰璺濈銆傚悜鍝釜鏂瑰悜婊戝姩锛燂紙鍒窡鎴戣浣犱换鎬э紝灏辨槸鎯虫枩鐫€婊戯級婊戝杩滐紵鏀炬墜鍚庯紝婊戝姩璺濈灏忓洖寮硅烦澶勭悊锛屾粦鍔ㄨ窛绂诲ぇ鏃跺垏鎹㈠鐞嗭紙缁撳悎translateIndex锛屾垜鐭ラ亾浣犳槑鐧斤級needAnimation-宸﹀彸婊戝姩鏄惁闇€瑕佸姩鐢伙紵鐪嬪浘璇磋鍚?馃憜)銆傛槸涓嶆槸瑙夊緱杩欎釜鍔ㄧ敾寰堝鎬紝浣嗘槸鍙堣涓嶅嚭鍝噷涓嶅锛岄偅鏄洜涓哄湪鍔ㄧ敾杩涜鐨勬椂鍊欙紝鎴戜滑缁檃llDataArr璧嬪€硷紝鎴戜滑鍦╰imer涓欢杩熻繖涓祴鍊兼搷浣滐紝鏁堟灉濡備笅锛堭煈囷級锛氭湁娌℃湁鏄庢樉鐨勬按骞抽噸澶嶈烦杞殑杩囩▼锛屽洜涓烘垜浠粦杩囧幓鏄痭ext锛屾渶鍚庡張鍥炲埌浜哻urrent銆傝繖涔堝皬鐨勯棶棰樻€庝箞鑳介檺鍒舵垜浠仾鏄庣殑澶ц剳鍛紝鎶婂洖娴佸姩鐢诲幓鎺夛紝涓嶅氨瀹岀編瑙e喅闂浜嗗悧锛熷垎閰嶄竴浜涗唬鐮佺墖娈碉細switchweekview杩樻槸鐪嬪浘璇磋瘽濂斤紝鏂囧瓧涓嶅鍥剧墖鐩磋锛屾垜浠潵鍒嗘瀽涓€涓嬪垏鎹㈠懆鐨勮繃绋嬶細Bingo锛屾槸transformY+height鐨勮繃绋嬸煈夊浜巋eight鏉ヨ锛屾棤闈炲氨鏄粠鎬婚珮搴﹀埌鍗曡楂樺害鐨勯噸澶嶆按骞宠烦璺冪殑杩囩▼銆傛瘡琛岄珮搴﹀浐瀹氾紝鎬婚珮搴?鍗曡楂樺害*鎬昏鏁癷sWeekView:false,//鍛ㄨ鍥炬垨鏈堣鍥緄temHeight:50,//鏃ュ巻琛岄珮lineNum:0,//鎬昏鏁板綋鍓嶈鍥剧殑琛屾暟this.lineNum=Math.ceil(this.dataArr.length/7)馃憠瀵逛簬transformY锛屽叾绉诲姩璺濈=锛堝綋鍓嶈鍙?1锛?鍗曡楂榦ffsetY:0,//Y杞村亸绉婚噺ofweekview//澶勭悊鍛ㄨ鍥剧殑鏁版嵁鍙樺寲dealWeekViewData(){constselectedIndex=this.dataArr.findIndex(item=>item.isSelected)constindexOfLine=Math.ceil((selectedIndex+1)/7)this.offsetY=-((indexOfLine-1)*this.itemHeight)}锛岃ˉ鍏ㄨ鍥句俊鎭湪鍋氬懆瑙嗗浘鐨勬粦鍔ㄥ垏鎹箣鍓嶏紝鎴戜滑鍏堣ˉ鍏ㄨ鍥句俊鎭紝璁剧疆daraArr鐨勭┖鐧藉濉叆鐩稿簲鐨勬棩鏈熴€傚勾鏈堢殑濉厖灏变笉璇翠簡銆傜畝鍗曟潵璇达紝绗簩澶╃殑濉厖next姣旇緝绠€鍗曪紝寰幆娆℃暟=7-鏈€鍚庝竴琛岀殑澶╂暟=7-涓嬩釜鏈堢涓€澶╃殑鍛ㄦ寚鏁帮紙鎻愮ず锛氶渶瑕佹敞鎰忕殑鏄紝濡傛灉涓嬩釜鏈堢涓€澶╃殑绱㈠紩涓?锛岃鏄庢病鏈夌┖鏍煎彲浠ュ~锛岃嚜鐒朵笉鐢ㄥ惊鐜級锛宒ay鐨勮祴鍊煎彲浠ヤ粠1鍙峰紑濮嬩緷娆¢€掑銆俢onstnextInfo=this.getNextMonth()letnextObj={type:'next',day:i+1,month:nextInfo.month,year:nextInfo.year,}鍐嶈pre锛屽惊鐜鏁?7-绗竴琛屽ぉ鏁?褰撴湀绗竴澶╃殑鍛ㄧ储寮曪紝day鐨勮祴鍊肩瓑浜庝笂鏈堟棩鏈熺殑鍊掑簭鈥嬧€?>涓婃湀澶╂暟-(褰撳墠鏈?鏃ョ殑鍛ㄧ储寮?(index+1))constpreInfo=this.getPreMonth(date)letpreObj={type:'pre',day:daysInMonth[preInfo.month-1]-(monthStartWeekDay-i-1),month:preInfo.month,year:preInfo.year,}鉂揼etPreMonth()鍑芥暟涔嬫墍浠ュ湪杩欓噷浼犻€掓棩鏈燄焻帮笍璇寸櫧浜嗭紝鏃ユ湡鏄竴涓弬鑰冿紝鏄紶閫掔粰涓婁釜鏈堣皝鎷胯皝锛涗负浠€涔坓etNextMonth()涓嶉€氳繃鍛紵杩欏苟涓嶉噸瑕併€傛棤璁洪€氳繃涓庡惁锛屽畠閮戒粠1寮€濮嬮€掑銆傝皝浼氬湪涓€浠跺井涓嶈冻閬撶殑浜嬫儏涓婃氮璐规劅鎯咃紵褰撲綘鐐瑰嚮涓€涓潪鏈湀鐨勬棩鏈熸椂锛屽搴旂殑灏辨槸鍒囨崲鏈堜唤銆傛鏃跺垏鎹㈠悗鐨勬棩鏈熸槸鐐瑰嚮鐨勬棩鏈燂紝鑰屼笉鏄1娆℃粦鍔ㄥ垏鎹㈡槦鏈熴€傚湪瑙嗗浘鍒囨崲鐨勮繃绋嬩腑锛岄偅浜涗笌鎴戜滑涓婁笅鎽╂摝鐨勮繕鍦ㄦ垜浠韩杈广€侾reArr鍜宯extArr姘歌繙涓嶄細绂诲紑銆傛棦鐒朵綘鏃犳硶鎽嗚劚瀹冧滑锛岄偅浣曚笉灏嗗畠浠殑浠峰€煎帇姒ㄥ埌鏋佽嚧锛岃鍒╃泭鏈€澶у寲銆傛垜浠鍚屼竴娆℃í鍐茬洿鎾炲墠鍚庣殑鏁版嵁杩涜灏嗙嫺鐚浛鎹负鐜嬪瓙鐨勬搷浣滐紝鍒嗗埆鏇挎崲涓哄綋鍓嶆暟鎹殑鍓嶄竴鍛ㄥ拰鍚庝竴鍛ㄣ€備竴涓槦鏈燂紝姣曠珶锛岀牬鍧忔槸涓€绉嶆洿濂界殑鍒涢€犮€傚鏋滀綘鎯虫妸涓€鍙嫺鐚崲鎴愪竴涓帇瀛愶紝浣犲繀椤诲厛鎵惧埌閭e彧鐙哥尗锛岀劧鍚庡啀鎵惧埌鐜嬪瓙锛岀劧鍚庢墠鑳藉皢涓よ€呬簰鎹€傝鎴戜滑浠ュ垏鎹㈠埌涓婂懆涓轰緥锛屾壘鍑虹嫺鐚拰鐜嬪瓙銆?civetcat-lastWeekNo.1濡傛灉涓嶆槸绗竴琛屾暟鎹紝涓婂懆=涓婁竴琛屻€傞€氳繃褰撳墠琛屽彿锛屽緱鍒颁袱绔暟鎹殑绱㈠紩锛屽垎鍒噺鍘?寰楀埌涓婁竴鍛ㄤ袱绔暟鎹殑绱㈠紩锛屽垯寰楀埌涓婁竴鍛ㄧ殑鏁版嵁銆侼o.2濡傛灉鏄綋鍓嶇涓€琛岋紝鍙堝彲浠ュ垎涓猴細绗竴涓暟鎹」鏄惁涓?鍙凤紝濡傛灉鏄紝鍒欏彇涓婁釜鏈堢殑鏈€鍚庝竴琛屾暟鎹紱濡傛灉涓嶆槸锛屽垯鍙栦笂涓湀鐨勫€掓暟绗簩琛屾暟鎹紙鎻愮ず锛氭鏃讹紝涓婁釜鏈堢殑鏈€鍚庝竴琛岀瓑浜庡綋鍓嶇涓€琛岋級锛涗互涓婁袱鐐逛篃鍙互璁や负鏄壘鍒扮壒瀹氭棩鏈熷湪涓婁釜鏈堢殑閭f潯绾裤€侾rince-骞宠涓栫晫鐨勫綋鍓嶈//鑾峰彇澶勭悊鍛ㄨ鍥炬墍闇€鐨勬暟鎹綅缃俊鎭痝etInfoOfWeekView(selectedIndex,length){constindexOfLine=Math.ceil((selectedIndex+1)/7)//褰撳墠琛屾暟consttotalLine=Math.ceil(length/7)//鎬昏鏁癱onstsliceStart=(indexOfLine-1)*7//褰撳墠琛屽乏绔殑绱㈠紩constsliceEnd=sliceStart+7//鍙崇鐨勭储寮曞綋鍓嶈鐨勭粨灏緍eturn{indexOfLine,totalLine,sliceStart,sliceEnd}},//澶勭悊lastWeek銆乶extWeek,骞惰繑鍥炴浛鎹㈣绱㈠紩dealWeekViewSliceStart(){constselectedIndex=this.dataArr.findIndex(item=>item.isSelected)const{indexOfLine,totalLine,sliceStart,sliceEnd}=this.getInfoOfWeekView(selectedIndex,this.dataArr.length)this.offsetY=-((indexOfLine-1)*this.itemHeight)//鍓嶄竴鍛ㄦ暟鎹甶f(indexOfLine===1){constpreDataArr=this.getMonthData(this.getPreMonth(),true)constpreDay=this.dataArr[0].day-1||preDataArr[preDataArr.length-1].dayconstpreIndex=preDataArr.findIndex(item=>item.day===preDay&&item.type==='normal')const{sliceStart:preSliceStart,sliceEnd:preSliceEnd}=杩欎釜.getInfoOfWeekView(preIndex,preDataArr.length)this.lastWeek=preDataArr.slice(preSliceStart,preSliceEnd)}else{this.lastWeek=this.dataArr.slice(sliceStart-7,sliceEnd-7)}//鍚庝竴鍛ㄦ暟鎹甶f(indexOfLine>=totalLine){constnextDataArr=this.getMonthData(this.getNextMonth(),true)constnextDay=this.dataArr[this.dataArr.length-1].type==='姝e父'?1锛歵his.dataArr[this.dataArr.length-1].day+1constnextIndex=nextDataArr.findIndex(item=>item.day===nextDay)const{sliceStart:nextSliceStart,sliceEnd:nextSliceEnd}=this.getInfoOfWeekView(nextIndex,nextDataArr.length)this.nextWeek=nextDataArr.slice(nextSliceStart,nextSliceEnd)}else{this.nextWeek=this.dataArr.slice(sliceStart+7,sliceEnd+7)}returnsliceStart},dealWeekViewData(){constsliceStart=this.dealWeekViewSliceStart()this.allDataArr[0].splice(sliceStart,7,...this.lastWeek)this.allDataArr[2].splice(sliceStart,7,...this.nextWeek)}锛屼紭鍖栦唬鐮佸埌杩欓噷鍩烘湰灏卞畬鎴愪簡锛屽墿涓嬬殑鎴戜滑鎬荤粨涓€涓嬭В鍐充笅闈㈢殑闂锛孉lahoo寮€杈熶簡涓€浜涚儌鍔ㄧ敾锛氳繖涓満鏅噷锛屾墍鏈夊鎬殑鍔ㄧ敾閮芥槸鐢眛ransitionDuration寮曡捣鐨勶紝鎵€浠ユ垜浠寮勬竻妤氫粈涔堟椂鍊欓渶瑕佸姩鐢伙紝浠€涔堟椂鍊欓渶瑕佷笉闇€瑕侊紝涓嶉渶瑕佺殑鏃跺€欒祴鍊?灏卞ソ浜嗭紝绫讳技鍗¢】鐨勬晥鏋滐細杩欎釜鍦烘櫙锛屽嚑涔庨兘鍗¢】浜唗ering鍜宒elay鏄偑鎭剁殑setTimeout閫犳垚鐨勶紝鎵€浠ユ兂鎯充粈涔堟椂鍊欓渶瑕侊紝浠€涔堟椂鍊欐灉鏂涪寮冿紝鏈€鍚庡姞涓猙ottomonetouchbar锛岃瀹冩洿婕備寒鏇村畬鏁撮暱鐮佸浘鐗囪鍛婏紝杩欓噷璇风偣鍑绘墦寮€澶у浘鏌ョ湅锛屼篃鍙互鐩存帴鍘绘垜鐨刧ithub鏌ョ湅锛屼紶閫侀棬-ajun568鍙傝€凁煍楅摼鎺ithub-鍩轰簬vue2.0寮€鍙戠殑杞婚噺绾ч珮鎬ц兘鏃ュ巻缁勪欢
