Я не могу получить представление макета должным образом заполненным портами представления, которые я указываю в конфигурации маршрута. У меня есть маршрут «styleguide», который должен использовать макет «sidebar», заполняя «sidebar» router-view «sidebar.html» и «content» router-view «content.ts / html»
app.ts
export class App {
configureRouter(config: RouterConfiguration, router: Router) {
config.map([{
route: "styleguide",
name: "styleguide",
layoutView: "layout/sidebar.html",
viewPorts: {
sidebar: { moduleId: "styleguide/sidebar.html" },
content: { moduleId: "styleguide/index" },
}
}]);
}
}
app.html
<template>
<router-view layout-view="layout/default.html"></router-view>
</template>
layout / default.html (не используется в этом примере)
<template>
<router-view></router-view>
</template>
макет / sidebar.html
<template>
<router-view name="sidebar"></router-view>
<router-view name="content"></router-view>
</template>
стилистический справочник / sidebar.html
<template>
SIDEBAR!!
</template>
стилистический справочник / index.ts
export class Index { }
стилистический справочник / index.html
<template>
CONTENT
</template>
Вопросы:
- "В представлении styleguide / sidebar.html не было найдено представление маршрутизатора." - хотя я указал имя маршрутизатора и т. Д.
- У меня есть другой маршрут, который не указывает
layoutView
и, таким образом, использует по умолчанию. Это работает только тогда, когда я заменяю элемент router-view
в layout / default.html на slot
. Я пытался использовать слоты в обеих раскладках, но раскладка боковой панели выдает ту же ошибку.