我已经在使用Angular Bootstrap日历,它运行正常。我添加了一个显示模态的按钮,因此我可以使用ui.bootstrap.datepicker添加新事件。
当模态弹出时,我收到以下控制台消息:
"Error: [ng:areq] http://errors.angularjs.org/1.4.3/ng/areq?p0=DatepickerDemoCtrl&p1=not%20a 1.#QNAN0unction%2C%20got%20undefined
以下是我plunker(index.html)
中的代码示例<body ng-cloak="" ng-app="demo">
<div id="demo" ng-controller="MainCtrl as vm" class="row">
<button class="btn btn-primary pull-right" ng-click="vm.eventCreateClicked(vm.events)">Add new event</button>
<mwl-calendar> </mwl-calendar> --> Calendar defined in here
<div ng-app="app" ng-controller="DatepickerDemoCtrl">
<script type="text/ng-template" id="modalCreateEventContent.html">
<div class="modal-body" id="modalEventCreate">
</div>
</script>
</div> <!-- ng-controller -->
</div>
</body>
我的添加新事件按钮调用demo.js中的eventCreateClicked函数
答案 0 :(得分:1)
Angular中的嵌套应用are doable但是没有开箱即用,通常无法推荐。这种情况不是例外。嵌套的ng-app
在这里也不会造成任何伤害,它只会被忽略。
DatepickerDemoCtrl
属于ui.bootstrap.demo
模块(不是app
),因此ui.bootstrap.demo
模块should be loaded in demo
module:
angular
.module('demo', ['mwl.calendar', 'ui.bootstrap', 'ngTouch', 'ngAnimate', 'ui.bootstrap.demo'])
答案 1 :(得分:0)
您已嵌套ng-app。 AngularJS中不允许这样做。 您可以在页面上拥有多个相邻的应用程序,但是您必须明确地引导它们。见this answer