fullcalendar 仅在窗口调整大小后出现 | 有角的

pkw*_*rlz 5 html css fullcalendar angular fullcalendar-5

我在项目中安装了 fullCalendar,但日历仅在调整屏幕大小时才会出现。

在此输入图像描述

我在 home.module.ts 中添加了这段代码

import { FullCalendarModule } from '@fullcalendar/angular'; // the main connector. must go first
import dayGridPlugin from '@fullcalendar/daygrid'; // a plugin
import interactionPlugin from '@fullcalendar/interaction'; // a plugin


FullCalendarModule.registerPlugins([ // register FullCalendar plugins
  dayGridPlugin,
  interactionPlugin
]);

@NgModule({
  imports: [
    ....
    FullCalendarModule, // for FullCalendar!
   ....


  ],
Run Code Online (Sandbox Code Playgroud)

在 home.page.ts 中我添加了以下代码

import { Calendar } from '@fullcalendar/core'; // include this line
import { CalendarOptions  } from '@fullcalendar/angular';
import dayGridPlugin from '@fullcalendar/daygrid'; // a plugin
export class HomePage {

  calendar = Calendar;
  calendarVisible = false;

  calendarOptions: CalendarOptions = {
    plugins: [dayGridPlugin],
    initialView: 'dayGridMonth',
    // initialView: 'dayGridWeek'
  };

  constructor() {
    // const name = Calendar; // add this line in your constructor

  }

  ngOnInit() {
    this.calendarVisible = true;
  }
Run Code Online (Sandbox Code Playgroud)

之后,我从那里的指南添加了简单的 html 到角度组件页面。

<ion-content class="ion-padding">
  <full-calendar *ngIf="calendarVisible" [options]="calendarOptions"></full-calendar>


</ion-content>
Run Code Online (Sandbox Code Playgroud)

没有CSS,它是最低限度的设置。

小智 1

将其添加到 ionViewWillEnter 生命周期中对我来说很有效。

calendarOptions: CalendarOptions;

ionViewWillEnter() {
    this.calendarOptions = {
      height: 'auto',
      headerToolbar: {
          left: 'prev,next',
          center: 'title',
          right: 'dayGridMonth,listWeek'
      },
      
      initialView: 'dayGridMonth',
      initialDate: new Date(),
      
    };
  }
Run Code Online (Sandbox Code Playgroud)