Aurelia назвала router-view / viewPorts не работающим - PullRequest
0 голосов
/ 10 января 2019

Я не могу получить представление макета должным образом заполненным портами представления, которые я указываю в конфигурации маршрута. У меня есть маршрут «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. Я пытался использовать слоты в обеих раскладках, но раскладка боковой панели выдает ту же ошибку.

1 Ответ

0 голосов
/ 11 января 2019

Вы получили ошибку из-за того, что app.html не поддерживает viewPorts. Существует только один <router-view/> с именем по умолчанию, поэтому при настройке маршрута с двумя окнами просмотра произошла ошибка с указанной выше ошибкой.

Макет, в соответствии с документацией, кажется способом достижения слотоподобного поведения для ваших маршрутов, а не местом для установки <router-view/>, как мне кажется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...