Использование 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', которые должны быть загружены первыми. Вы можете или не можете нуждаться в других линиях прокладки.