最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue下使用fullcalendar案例講解

 更新時(shí)間:2024年01月17日 11:32:10   作者:林深時(shí)見(jiàn)鹿7  
這篇文章主要介紹了vue下使用fullcalendar及簡(jiǎn)單案例,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

ps:我真的感覺(jué)自己是個(gè)前端了,最近天天在寫前端。不過(guò)很多復(fù)雜邏輯,后臺(tái)處理起來(lái)比較麻煩,所以只讓后臺(tái)提供簡(jiǎn)單數(shù)據(jù),前端封裝處理數(shù)據(jù)確實(shí)比較方便!
引子:最近公司要做個(gè)人日程管理,故鄙人思前想后,選擇了fullcalendar組件。但!官方文檔全是英文,對(duì)于英語(yǔ)四級(jí)都沒(méi)過(guò)的我,真是很心累。只能發(fā)揚(yáng)面向百度編程的優(yōu)良傳統(tǒng),找了好多案例做出來(lái)了?,F(xiàn)總結(jié)如下:

vue下使用fullcalendar及簡(jiǎn)單案例

  • 使用版本:5.3.0
  • 效果圖

安裝

在package.json中引入如下,運(yùn)行“npm i”

    "@fullcalendar/daygrid": "^5.3.0",
    "@fullcalendar/interaction": "^5.3.0",
    "@fullcalendar/list": "^5.3.0",
    "@fullcalendar/timegrid": "^5.3.0",
    "@fullcalendar/vue": "^5.3.0",

或者直接 “npm install -save *****”
運(yùn)行報(bào)錯(cuò),多半是因?yàn)閬y七八糟的依賴版本沖突,要更換依賴版本。對(duì)了!安裝前請(qǐng)把npm改成阿里云依賴下載,否則卡死。
安裝成功的話,在package-lock.json中會(huì)有一條記錄:

無(wú)需再main.js中引入

使用

基本使用

創(chuàng)建vue文件,在script中引入fullcalendar(哪個(gè)頁(yè)面用哪里引)

<template>
   <FullCalendar ref="fullCalendar"></FullCalendar>
</template>
<script>
import FullCalendar from '@fullcalendar/vue'
import dayGridPlugin from '@fullcalendar/daygrid'
import timeGridPlugin from '@fullcalendar/timegrid'
import interactionPlugin from '@fullcalendar/interaction'
import listPlugin from '@fullcalendar/list'
export default {
  //import引入的組件需要注入到對(duì)象中才能使用
  components: { FullCalendar }  
}
</script>

此時(shí)可以顯示一個(gè)簡(jiǎn)單的日歷了,但遠(yuǎn)遠(yuǎn)不是我們想要的。

注入事件和屬性

代碼:

<template>
   <FullCalendar ref="fullCalendar" :options="calendarOptions"></FullCalendar>
</template>
<script>
import FullCalendar from '@fullcalendar/vue'
import dayGridPlugin from '@fullcalendar/daygrid'
import timeGridPlugin from '@fullcalendar/timegrid'
import interactionPlugin from '@fullcalendar/interaction'
import listPlugin from '@fullcalendar/list'
export default {
  //import引入的組件需要注入到對(duì)象中才能使用
  components: { FullCalendar }  
  data() {
    return {
      calendarOptions: {
        plugins: [dayGridPlugin, timeGridPlugin, interactionPlugin, listPlugin],
        initialView: 'dayGridMonth',
        locale: 'zh',
        firstDay: 1,
        buttonText: {
          today: '今天',
          month: '月',
          week: '周',
          day: '日',
          list: '周列表',
        },
        headerToolbar: {
          left: 'prev,next today',
          center: 'title',
          right: 'dayGridMonth,timeGridWeek,timeGridDay listWeek',
        },
        height: 650,
        validRange: this.validRange,  //設(shè)置可顯示的總?cè)掌诜秶?
        events: [], //背景色 (添加相同時(shí)間的背景色時(shí)顏色會(huì)重疊) 
        datesSet: this.datesSet, //日期渲染;修改日期范圍后觸發(fā)
        eventClick: this.handleEventClick, //點(diǎn)擊日程觸發(fā)
        dateClick: this.handleDateClick, //點(diǎn)擊日期觸發(fā)
        eventDrop: this.calendarEventDropOrResize, //拖動(dòng)事件觸發(fā)
        eventResize: this.calendarEventDropOrResize, //縮放事件觸發(fā)
        displayEventTime: false, //不顯示具體時(shí)間
      },
      validRange: {
        start: '2021-09-01',
        end: moment().add(6, 'months').format('YYYY-MM-DD'),
      }
    }
  },
   methods: {
    datesSet(info) {   //注意:該方法在頁(yè)面初始化時(shí)就會(huì)觸發(fā)一次
        console.log(info)
        // this.search()  //請(qǐng)求本頁(yè)數(shù)據(jù)
        //虛擬數(shù)據(jù)
        this.calendarOptions.events = [{
              id: 111,
              title: '任務(wù)1',
              start: ‘2021-10-01',
              end: ‘2021-10-11'
              color: ‘#ffcc99',
              editable: true, //允許拖動(dòng)縮放,不寫默認(rèn)就是false
              overlap: true, //允許時(shí)間重疊,即可以與其他事件并存,不寫默認(rèn)就是false
          },{
			id: 222,
              title: '任務(wù)2',
              start: ‘2021-10-12',
              end: ‘2021-10-20'
              color: ‘#ffcc99',
              editable: true, //允許拖動(dòng)縮放
		}] 
      },
    handleEventClick(info) {},
    handleDateClick(info){},
    calendarEventDropOrResize(info){}
  }
}
</script>

參數(shù)說(shuō)明:

  • plugins::綁定的控件
  • initialView:‘dayGridMonth’ 默認(rèn)顯示視圖,月視圖
  • locale:‘zh’ 國(guó)際化,中文
  • firstDay:1 星期的第一列顯示,周一(0周日 1周一 2周二…)
  • buttonText:buttonText 按鈕文本
  • headerToolbar:header 頭部工具條

  • height:日歷高度
  • validRange:validRange 全局日期范圍;超出范圍按鈕會(huì)禁用
  • 數(shù)據(jù)來(lái)源:
  • events: [] 日程數(shù)據(jù)存放在這里,使用this.calendarOptions.events調(diào)用

事件說(shuō)明:

datesSet:修改日期范圍后觸發(fā),即點(diǎn)擊

這三個(gè)按鈕時(shí)觸發(fā)eventClick:點(diǎn)擊任務(wù)時(shí)觸發(fā)dateClick: 點(diǎn)擊日期觸發(fā)eventDrop: 拖動(dòng)事件觸發(fā)eventResize: 縮放事件觸發(fā)

  • datesSet:修改日期范圍后觸發(fā),即點(diǎn)擊

    這三個(gè)按鈕時(shí)觸發(fā)
  • eventClick:點(diǎn)擊任務(wù)時(shí)觸發(fā)
  • dateClick: 點(diǎn)擊日期觸發(fā)
  • eventDrop: 拖動(dòng)事件觸發(fā)
  • eventResize: 縮放事件觸發(fā)

到此這篇關(guān)于vue下使用fullcalendar及簡(jiǎn)單案例的文章就介紹到這了,更多相關(guān)vue使用fullcalendar內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • HBuilder導(dǎo)入vue項(xiàng)目并通過(guò)域名訪問(wèn)的過(guò)程詳解

    HBuilder導(dǎo)入vue項(xiàng)目并通過(guò)域名訪問(wèn)的過(guò)程詳解

    這篇文章主要介紹了HBuilder導(dǎo)入vue項(xiàng)目并通過(guò)域名訪問(wèn),一般情況下運(yùn)行vue項(xiàng)目需要安裝node.js,通過(guò)npm命令來(lái)安裝vue組件和運(yùn)行vue項(xiàng)目,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • 在vue中使用jsx語(yǔ)法的使用方法

    在vue中使用jsx語(yǔ)法的使用方法

    這篇文章主要介紹了在vue中使用jsx語(yǔ)法的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • vue中的公共方法調(diào)用方式

    vue中的公共方法調(diào)用方式

    這篇文章主要介紹了vue中的公共方法調(diào)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue在mounted中window.onresize不生效問(wèn)題及解決

    vue在mounted中window.onresize不生效問(wèn)題及解決

    這篇文章主要介紹了vue中在mounted中window.onresize不生效問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 老生常談vue的生命周期

    老生常談vue的生命周期

    這篇文章主要為大家詳細(xì)介紹了vue的生命周期,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • Vue具名插槽+作用域插槽的混合使用方法

    Vue具名插槽+作用域插槽的混合使用方法

    這篇文章主要介紹了Vue具名插槽+作用域插槽的混合使用,這里只簡(jiǎn)單的介紹?具名插槽+作用域插槽?混合在一起使用的方法,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • Vue 2.X的狀態(tài)管理vuex記錄詳解

    Vue 2.X的狀態(tài)管理vuex記錄詳解

    這篇文章主要介紹了Vue 2.X的狀態(tài)管理vuex記錄的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家的理解和學(xué)習(xí)具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • proxy實(shí)現(xiàn)vue3數(shù)據(jù)雙向綁定原理

    proxy實(shí)現(xiàn)vue3數(shù)據(jù)雙向綁定原理

    這篇文章主要介紹了proxy實(shí)現(xiàn)vue3數(shù)據(jù)雙向綁定原理,文章以介紹proxy的優(yōu)點(diǎn)開(kāi)始展開(kāi)全文內(nèi)容,圍繞proxy實(shí)現(xiàn)vue3數(shù)據(jù)雙向綁定的相關(guān)資料,,需要的朋友可以參考一下
    2021-12-12
  • 淺析Vue中Virtual?DOM和Diff原理及實(shí)現(xiàn)

    淺析Vue中Virtual?DOM和Diff原理及實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了Vue中Virtual?DOM和Diff原理及實(shí)現(xiàn)的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-03-03
  • 如何使用el-table+el-tree+el-select動(dòng)態(tài)選擇對(duì)應(yīng)值

    如何使用el-table+el-tree+el-select動(dòng)態(tài)選擇對(duì)應(yīng)值

    小編在做需求時(shí),遇到了在el-table表格中加入多條數(shù)據(jù),并且每條數(shù)據(jù)要通過(guò)el-select來(lái)選取相應(yīng)的值,做到動(dòng)態(tài)選擇,下面這篇文章主要給大家介紹了關(guān)于如何使用el-table+el-tree+el-select動(dòng)態(tài)選擇對(duì)應(yīng)值的相關(guān)資料,需要的朋友可以參考下
    2023-01-01

最新評(píng)論

涡阳县| 杨浦区| 汨罗市| 酒泉市| 黄山市| 安阳市| 海口市| 石屏县| 嘉峪关市| 盘山县| 黄龙县| 元江| 木里| 贡觉县| 理塘县| 房山区| 远安县| 临湘市| 定日县| 正蓝旗| 绥宁县| 贵定县| 仙游县| 永顺县| 南宫市| 广昌县| 东安县| 揭西县| 昭觉县| 乌拉特前旗| 峡江县| 阳西县| 汕头市| 资中县| 巧家县| 鲁甸县| 昭通市| 泸溪县| 德庆县| 上蔡县| 那曲县|