Angular hybrid app,typeerror calendar.fullcalendar不是函数

时间:2017-09-29 19:33:35

标签: angularjs angular calendar fullcalendar systemjs

我正在开发一个使用AngularJS和Angular(2+)的应用程序。在新版本中,我使用system.js导入Angular应用程序。没有system.js导入日历工作正常,但使用system.js初始化时会出现问题。

我已尝试使用calendar = $(elm);下面的技巧,但没有运气。

https://github.com/angular-ui/ui-calendar/issues/267

即使尝试var calendar = $('#calendar’)

问题似乎并不在于认识到存在日历元素。从我可以推断记录框架的源代码,正确工作时,日历元素在初始化时具有这些类。

div#calendar.calendar.ng-pristine.ng-untouched.ng-valid.ng-isolate-scope.fc.fc-cursor.fc-ltr.fc-unthemed

目前初始化试图将此作为抛出angular.min.js:117 TypeError: calendar.fullCalendar is not a function错误的日历元素,它仍然会找到正确的元素,但不会将类附加到它。

div#calendar.calendar.ng-pristine.ng-untouched.ng-valid.ng-isolate-scope

script.ejs

<!-- jQuery -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<—-! All the AngularJS -—>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-cookies.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.6/angular-animate.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.6/angular-route.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.6/angular-sanitize.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-aria.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
<!-- Moment -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js" integrity="sha256-1hjUhpc44NwiNg8OwMu2QzJXhD8kcj+sJA3aCQZoUjg=" crossorigin="anonymous"></script>
<!-- ui calendar -->
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-ui-calendar/1.0.0/calendar.min.js" integrity="sha256-DBa6dvjY39GU4NQ2Ia2CIPVFszxgZ4N3JccyPvJNPLI=" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/2.7.1/fullcalendar.min.js"></script>

AngularJS only app,index.ejs:

<body>
  <div id="shell" data-ng-app="app" data-ng-controller="shellController">

    …

  </div>


  <%- include partials/scripts %>

</body>

混合应用程序index.ejs:

<body class="full-width">
  <div id="shell" data-ng-controller="shellController">

  …

  </div>


  <%- include partials/scripts %>

  <script src="node_modules/systemjs/dist/system.src.js"></script>
  <script src="systemjs.config.js"></script>
  <script>
      System.import('app').catch(function(err) { console.error('ERR from import: ’,err); });
  </script>


</body>

我正在使用vc 2.7.1的fullcalendar,以及v 1.0.0的angular-ui-calendar。任何帮助可能导致这个问题的原因都会非常感激,我已经看了好几天了!

1 个答案:

答案 0 :(得分:0)

我在这篇文章中找到了答案。

How to import fullcalendar v.3.0.1 with systemjs?

事实证明,moment.js文件中的问题不在system.js配置中的Tensorflow属性中。