Итак, у меня есть большое приложение, которое состоит из функций.Каждая функция доступна через меню, которое по существу загружает веб-страницу, содержащую приложение aurelia для этой конкретной функции.Это работает нормально, так как позволяет мне завершать функцию за раз и использовать потенциально разные технологии на стороне клиента.
Однако теперь мне нужно иметь более одного приложения Aurelia на одной странице: описанное выше «функциональное» приложение и приложение «navbar», которое всегда будет находиться на верхней панели навигации.Таким образом, расположение выглядит следующим образом.
Я использую webpack с плагином aurelia webpack.Я пробовал различные меры, чтобы заставить это работать, но я сталкиваюсь с проблемами на каждом шагу.Моя текущая модель состоит в том, чтобы вручную загрузить приложение «feature» и приложение «nav» из одного файла конфигурации веб-пакета:
entry: {
packages: [
"main","nav"
]
},
В каждом из этих модулей я вручную запускаю загрузку, например:
bootstrap((aurelia: Aurelia) => {
// init code
aurelia.start())
.then(() => aurelia.setRoot(PLATFORM.moduleName("app"), document.querySelector("#packages-app")));});
Итак, приложение «функции» загружается в определенный элемент DOM, аналогично приложению «nav».
Мои вопросы
- Это поддерживаемый или даже подходящий способ разделения функций?
- Мне кажется, что код в одном модуле влияет на другой.Есть ли способ, чтобы компонент Aurelia, который вводится в модули в каждом приложении, имел общее состояние?