Angular 角度谷歌地图不适用于路由器插座

Angular 角度谷歌地图不适用于路由器插座,angular,typescript,agm-core,Angular,Typescript,Agm Core,我正在创建一个应用程序,它有一个map作为头(全局视图)和页面中间的另一个映射,代表一些细节视图。我让它工作了 现在,为了最大限度地减少代码重复,我想将头部映射移动到父组件,以便可以在多个页面中重用全局映射头部。我可以通过角度路由器(childrentag)实现这一点。这意味着: LayoutComponent (global view map) --> <router-outlet> --> HomeComponent (detail view map) Layout

我正在创建一个应用程序,它有一个map作为头(全局视图)和页面中间的另一个映射,代表一些细节视图。我让它工作了

现在,为了最大限度地减少代码重复,我想将头部映射移动到父组件,以便可以在多个页面中重用全局映射头部。我可以通过角度路由器(
children
tag)实现这一点。这意味着:

LayoutComponent (global view map) --> <router-outlet> --> HomeComponent (detail view map)
LayoutComponent(全局视图地图)-->-->HomeComponent(局部视图地图)
但不知何故,仅加载子组件中的贴图。我复制了这种行为

现在我想知道,我是不是做错了什么?我似乎找不到这个代码不起作用的原因


版本

  • @检票机/核心
    1.0.0
  • 角度
    8.2.10

您似乎有一些结构问题。在FeatureModule中,加载HomeModule并渲染LayoutComponent。AppComponent和LayoutComponent中都有
。您还需要导出其各自模块中的某些组件,以便在其他模块中使用它们


我做了一些结构更改,FeatureModule加载HomeComponent。appComponent现在使用

谢谢,这很有效!但是,如果我想要一条不使用布局组件作为父级的管线,该怎么办?为什么我不能嵌套路由器出口?你可以嵌套路由器出口,但我认为很难正确处理。你需要以不同的方式构建你的模块和组件,而不是在app.component中使用app布局,你需要定义另一个组件,让该组件处理哪些路由应该使用app布局而不是。啊,这很有意义。你能给我一个代码示例,说明如果我需要多种类型的父对象,那么应该如何解决这个问题,因此布局组件并不总是作为父对象?我可能会在你的app.component中有代码,读取当前url(注入路由器,并订阅navigationEnd事件),然后在布局组件上使用*ngIf=“displayLayout”,然后*ngIf=!显示布局“在app.component模板的路由器出口上。还有其他的方法,什么最适合你的应用取决于你<代码>
如果向父路线添加语言参数,则地图不再加载。示例:。如果在url中添加语言,例如/en,url会按预期重写为/en/home,但不再加载布局组件。你能告诉我我错过了什么吗?