2016-01-25 454 views
1

我是AngularJS的新手,使用AngularJS和RequireJS構建應用程序。datepicker not in modal

在其中一個帶有控制器的模塊中,我使用$ modal服務創建了一個模態對話框。模態對話有Angular Schema FormDatepicker Addon

Datepicker需要一些腳本文件才能工作。當我在頭部的index.html(主頁面)中添加這些腳本文件時,它會在對話框中運行。但我無法更改主頁面,所以我嘗試在module.js中顯示的模塊文件中加載依賴項,但它不起作用。

module.js

define(
    [ angular, .../path to datepicker dependencies ], 
    function(angular) { 
     return angular.module("mainctrl", []) 
      .controller("test", function($scope,$modal) { 
       $scope.formOperation=function() { 
        $modal.open({ 
         templateurl:../schema-form.html, 
         controller: modelCtrl 
        }); 
       } 
      }) 
    }); 

下面是主網頁的主體部分,其中,如果我在頭標籤,日期選擇器作品添加這些腳本的依賴。

的index.html

<body> 
    <div data-ng-view="" id="ng-view"></div> 

    <script src="bower_components/requirejs/require.js" data-main="../scripts/main"></script> 
</body> 

架構form.html

<div class="modal-content h-widget-action-form"> 
    <style> 
    @import url('/addons/h/widgets/h-action/h-action.css'); 

    </style> 
    <div class="modal-body"> 
    <!-- <i class="glyphicon glyphicon-remove pull-right" data-ng-click="cancel()"></i><br/> 
     <div data-ng-if="message" class="alert" data-ng-class="message.type">{{message.text}}</div> --> 
      <form novalidate name="formCtrl" sf-schema="definition" sf-form="form" sf-model="model"></form> 
    </div> 

</div> 

我檢查了頭部的index.html由requirejs附加腳本標籤,它幷包含正確的我所有的日期選擇器的依賴順序(使用shim配置),但仍然不能使用datepicker,除非我在index.html頭標記中明確指定這些依賴項。

有誰能告訴我我哪裏出錯了嗎?

+0

你有這裏的錯字 - '[])。控制器(「」測試「,' – karaxuna

+0

錯字不是問題。在我的應用程序是正確的..因爲它的工作原理除了日期選擇器 – Nitesh

回答

0

我首先想到的是日期選擇器組件不是一個模塊,這樣定義可能無法正確加載它,你嘗試過包裝它作爲一個JavaScript模塊,它可能是不夠的,它通過
angular.module('schemaForm').directive('pickADate', function() {所以它本身重視角需要能夠訪問angular顯然它被加載的任何範圍內。

我想你可能已經解決了這個問題已經給出的年齡。