Использование Angular с ветерком и требует

Я пытаюсь использовать angular с breeze и requireJS, как только я получаю ошибку Uncaught Error: имя модуля "ko" еще не загружено для контекста: _. Используйте требуют ([])

я настроил

define("breezeConfig", ["breeze"], function(breeze) {
// configure to use the model library for Angular
//breeze.config.initializeAdapterInstance({ dataService: "OData" });
breeze.config.initializeAdapterInstance("modelLibrary", "backingStore", true);

// configure to use camelCase
breeze.NamingConvention.camelCase.setAsDefault();

var serverAddress = "/odata/";
var manager = new breeze.EntityManager(serverAddress);
return breeze;

});

и в основном модуле

require.config({
baseUrl: "/app",
paths: {
    "jQuery": "lib/jquery-1.8.2",
    "angular": "lib/angular",
    "angular-resource": "lib/angular-resource",
    "text": "lib/text",
    "Q": "lib/q",
    "breeze": "lib/breeze.min"
 and so on

в конце

require([
'jQuery',
'Q',
'breeze',
'angular',
'app',
'controllers',
'routes',
'breezeConfig'

], функция ($, угловая, приложение) {

angular.element(document).ready(function () {
    angular.bootstrap(document, ['AMail']);
});

где я не прав?

1 ответ

Решение

Да мы знаем. Об этом сообщалось ранее. У нас есть исправление на пути (следующий выпуск).

Между тем, внутри вашего основного модуля сделайте две вещи:

1) определить фиктивный модуль нокаута

define('ko', function() {}); // ничего не делать

2) добавьте прокладку к вашей функции require.config:

...
шим: {
       jquery: { export: '$' },
       угловой: {экспорт: 'угловой'},
       ветерок: { deps: ['ko', 'jquery', 'Q'] }
      }
...

Вам понадобится шим (без зависимости "ко"!) Даже после того, как мы исправим проблему ко. Бриз зависит от 'jquery' и 'Q', которые должны быть загружены первыми. Вы можете или не можете нуждаться в других линиях прокладки.

Другие вопросы по тегам