Просмотр исходного кода

put _eventsPositioned in a better place

Adam Shaw 7 лет назад
Родитель
Сommit
ff4257dc02
2 измененных файлов с 8 добавлено и 8 удалено
  1. 6 6
      src/component/DateComponent.ts
  2. 2 2
      tests/automated/legacy/eventLimit-popover.js

+ 6 - 6
src/component/DateComponent.ts

@@ -297,11 +297,6 @@ export default class DateComponent extends Component<DateComponentProps> {
         bgRanges = this.filterBgEventRanges(bgRanges)
         this.fillRenderer.renderSegs('bgEvent', this.eventRangesToSegs(bgRanges))
       }
-
-      let calendar = this.calendar
-      if (!calendar.state.loadingLevel) { // avoid initial empty state while pending
-        calendar.afterSizingTriggers._eventsPositioned = [ null ] // fire once
-      }
     }
   }
 
@@ -656,8 +651,9 @@ export default class DateComponent extends Component<DateComponentProps> {
 
 
   triggerRenderedSegs(segs: Seg[], isMirrors: boolean) {
+    let { calendar } = this
+
     if (this.hasPublicHandlers('eventPositioned')) {
-      let calendar = this.calendar
 
       for (let seg of segs) {
         this.publiclyTriggerAfterSizing('eventPositioned', [
@@ -676,6 +672,10 @@ export default class DateComponent extends Component<DateComponentProps> {
         ])
       }
     }
+
+    if (!calendar.state.loadingLevel) { // avoid initial empty state while pending
+      calendar.afterSizingTriggers._eventsPositioned = [ null ] // fire once
+    }
   }
 
   triggerWillRemoveSegs(segs: Seg[]) {

+ 2 - 2
tests/automated/legacy/eventLimit-popover.js

@@ -405,14 +405,14 @@ describe('eventLimit popover', function() {
 
     expect(options.eventRender.calls.count()).toBe(8) // +4
     expect(options.eventPositioned.calls.count()).toBe(8) // +4
-    expect(options._eventsPositioned.calls.count()).toBe(1) // stays same!
+    expect(options._eventsPositioned.calls.count()).toBe(2) // +1
     expect(options.eventDestroy.calls.count()).toBe(0)
 
     $('.fc-more-popover .fc-close').simulate('click')
 
     expect(options.eventRender.calls.count()).toBe(8)
     expect(options.eventPositioned.calls.count()).toBe(8)
-    expect(options._eventsPositioned.calls.count()).toBe(1)
+    expect(options._eventsPositioned.calls.count()).toBe(2)
     expect(options.eventDestroy.calls.count()).toBe(4) // +4
   })