2014-10-10 2 views
2

Я новичок в Angular и Require, мой вопрос касается следующего фрагмента кода (я уже подключил угловое и потребовал, я могу включить файлы, если задано); элемент инициализации бутстрапа не инициализируется:Angular.js + require.js + jQuery Plugin custom директива

define(['myapp.ui/module', function (module) { 
module.directive('bootstrapSwitch', ['$parse', '$path', function ($parse, $path) { 
    return { 
     restrict: 'A', 
     replace: true, 
     link: function (scope, element) { 
      //load requirements for this directive. 
      console.log(element.bootstrapSwitch); 
      element.bootstrapSwitch(); 
     } 
    }; 
    return require([ 
     'myapp.ui/switch/bootstrap-switch.min', 
     'css!myapp.ui/switch/bootstrap-switch.min'], 
     function() { 
      return { 
       restrict: 'A', 
       replace: false, 
       link: function (scope, element) { 
        //load requirements for this directive. 
        element.bootstrapSwitch(); 
       } 
      }; 
     }); 
}]); 

}]);

Я могу видеть загружаемый файл директивы (один выше), но элемент не инициализирован, я не вижу bootstrap-switch.min.css и bootstrap-switch.min.js (я знаю, что пути работают, я уверен, что у меня есть синтаксисом проблемы где-то. Если нет, то просьба уточнить. Любая помощь будет оценена !!!!

Спасибо !!!

ответ

2

Проблема с синтаксисом 1:

Изменение:

define(['myapp.ui/module', function (module) { 

To:

define(['myapp.ui/module'], function (module) { 

Кроме того, рекомендуется использовать другое имя аргумента, чем 'модуль', так как его можно спутать с модулем AMD. (Модуль называется «модуль» представляет собой специальный модуль, который относится к самому загруженному модулю.)

Синтаксис Проблема 2:

return Второго заявление не будет ничего делать. Может быть, вы хотели бы включить все зависимости в наружной define:

define([ 
    'myapp.ui/module', 
    'myapp.ui/switch/bootstrap-switch.min', 
    'css!myapp.ui/switch/bootstrap-switch.min' 
], function (ui) { 
+0

Отличное объяснение и пятно на моих ошибках !!! Спасибо :) – Jose

0

не удалось вернуть другую вещь после return, если оператор require попытается загрузить некоторые зависимости, вы можете поместить его в первый параметр определения.

+0

Как и в: определить ([ 'myapp.ui/модуль', 'myapp.ui/переключатель/самозагрузки-switch.min', ..]) и т.д? – Jose

Смежные вопросы