2013-11-11 4 views
0

У меня есть небольшое требование. Я только начал работать над простым SPA-приложением. Мои требования - это класс записи в файле .js, и я должен был бы назвать отдельный класс в другом .js-файле.несколько модулей в одном файле SPA

Вкратце, у меня есть класс поиска, заказа и клиента в одном файле .js.

*globals define*/ 
define(function(require){ 
    ... 

     return search; 
}); 
define(function(require){ 
    ... 

     return order; 
}); 
define(function(require){ 
    ... 

     return customer; 
}); 

Я хочу назвать любой из вышеуказанных модулей. Есть ли какое-либо решение для этого.?

Спасибо,
Шива

ответ

2

Таким образом, не допускается. Существуют и другие решения этой проблемы.

Модули в Дюрандале обрабатываются библиотекой AMD RequireJS. В документации библиотеки говорится:

Один модуль на файл.: Только один модуль должен быть определен для каждого JavaScript-файла , учитывая природу поиска модуля по пути к файлу . Несколько модулей будут сгруппированы в оптимизированные файлы на инструментом оптимизации, но вы должны использовать инструмент оптимизации для размещения более одного модуля в файле.

Как он описывает, одним из вариантов является оптимизация нескольких модулей (нескольких файлов) в один файл. (Optimization doc)

Или вы можете определить один модуль с несколькими объектами внутри, как описано в этом stackoverflow answer. Используя этот подход, вы не сможете загружать объекты отдельно, поэтому вам всегда нужно будет загружать объекты search, order и customer, даже если вам нужен только один.

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