2016-12-20 14 views
2

私はここでかなり問題があります。 私はocLazyLoaderを使ってカレンダー全体をロードしてもうまく動作しますが、fullCalendarスケジューラーも含めようとしていますが、JavaScriptでこのエラーが発生しています。Fullcalendar-スケジューラがプロパティ 'scheduler Version'を未定義に設定できません

Uncaught TypeError: Cannot set property 'schedulerVersion' of undefined 

それはプラグインのソースコードで$.fullCalendarに等しい変数を設定することはできませんように見えます。ここ
は、私は私のファイルをインスタンス化する方法です:

resolve: { 
    resources: function($ocLazyLoad) { 
     return $ocLazyLoad.load([ 
      ASSETS.forms.multiSelect 
     ]) 
    },fullCalendarScheduler: function($ocLazyLoad){ 
     return $ocLazyLoad.load([ 
      ASSETS.core.moment, 
      ASSETS.extra.scheduler, 
     ]); 
    }, 
    fullCalendar: function($ocLazyLoad){ 
     return $ocLazyLoad.load([ 
      ASSETS.extra.fullCalendar 
     ]); 
    }, 
} 

私はコントローラに正しい値のaswellを渡します。

controller('AccueilCtrl', ['$scope', '$filter', 'fullCalendar', 'fullCalendarScheduler', function($scope, $filter, fullCalendar, fullCalendarScheduler) { 

これを修正する方法についてのアイデアはありますか?

答えて

2

私はそれを修正する方法を見つけました。私はそれが正しい方法であるかどうかはわかりませんが、うまくいきます。
Fullcalendarでは、必要なファイルをインポートするための具体的な指示が必要でした。 OcLazyLoadを使用すると、files: []パラメータを使用してこの順序を決定できます。例:

fullCalendar: function($ocLazyLoad){ 
       return $ocLazyLoad.load({ 
        files: [ 
         appHelper.assetPath('js/fullCalendar/3.1.0/fullcalendar.min.css'), 
         appHelper.assetPath('js/scheduler/1.5.0/scheduler.min.css'), 
         appHelper.assetPath('js/moment.min.js'), 
         appHelper.assetPath('js/fullCalendar/3.1.0/fullcalendar.min.js'), 
         appHelper.assetPath('js/scheduler/1.5.0/scheduler.min.js') 
        ] 
       }); 
      } 

この方法では、私は必要な順序で必要なファイルをインポートすることができました。 ASSETSのjsからcssを分離してから、正しい順序でインポートすることもできます。 これが他人に役立つことを願っています!

  • ニック
1

jQueryの$.getScript(url);メソッドを介して動的にcalandarファイルをロードするときに同じ問題を持っていたと私はこの記事に出くわしました。ありがとう、Nick、あなたのソリューションを投稿してください!

ロード順を変更した後、すべてがうまくいった。私にとって ロード順序は:

第一

- すべてのCSS

第二のロード - この順序でロードJS:

  • moment.min.js
  • fullcalendar.min.js
  • scheduler.min.js
  • bootstrap.min.js
  • ...

これは他の人に役立つことを願っています。

+0

うれしい私はあなたを助けることができます:) – Nicolas

関連する問題