加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular 6:功能模块之间的共享组件不起作用

发布时间:2020-12-17 10:25:35 所属栏目:安全 来源:网络整理
导读:我创建了2个功能模块(PagesSharedModule HomeModule). 现在我正在尝试使用来自HomeModule amp;组件模板中的PagesSharedModule的导出组件.我收到此错误: ERROR Error: Uncaught (in promise): Error: Template parse errors: 'app-main-menu' is not a known
我创建了2个功能模块(PagesSharedModule& HomeModule).
现在我正在尝试使用来自HomeModule& amp;组件模板中的PagesSharedModule的导出组件.我收到此错误:
ERROR Error: Uncaught (in promise): Error: Template parse errors: 'app-main-menu' is not a known element:
1. If 'app-main-menu' is an Angular component,then verify that it is part of this module.
2. If 'app-main-menu' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR
->]<app-main-menu></app-main-menu>"): ng:///HomeModule/HomeComponent.html@0:0 Error: Template parse errors: 'app-main-menu' is not a known element:
1. If 'app-main-menu' is an Angular component,then verify that it is part of this module.
2. If 'app-main-menu' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("[ERROR
->]<app-main-menu></app-main-menu>"): ng:///HomeModule/HomeComponent.html@0:0
    at syntaxError (compiler.js:215)
    at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse (compiler.js:14687)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate (compiler.js:22687)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate (compiler.js:22674)
    at compiler.js:22617
    at Set.forEach (<anonymous>)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents (compiler.js:22617)
    at compiler.js:22527
    at Object.then (compiler.js:206)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:22526)
    at syntaxError (compiler.js:215)
    at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse (compiler.js:14687)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate (compiler.js:22687)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate (compiler.js:22674)
    at compiler.js:22617
    at Set.forEach (<anonymous>)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents (compiler.js:22617)
    at compiler.js:22527
    at Object.then (compiler.js:206)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:22526)
    at resolvePromise (zone.js:814)
    at resolvePromise (zone.js:771)
    at zone.js:873
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
    at Object.onInvokeTask (core.js:3751)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
    at drainMicroTaskQueue (zone.js:595)

如果它有任何区别,HomeModule是一个路由延迟加载的模块.

我的代码:

SRC /应用程序/页/页共享/页-shared.module.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { MainMenuComponent } from './main-menu/main-menu.component';

@NgModule({
  imports: [
    CommonModule
  ],declarations: [
    MainMenuComponent
  ],exports: [
    MainMenuComponent
  ]
})

export class PagesSharedModule { }

SRC /应用程序/页/页共享/主菜单/主menu.component.ts

import { Component,OnInit } from '@angular/core';

@Component({
  selector: 'app-main-menu',templateUrl: './main-menu.component.html',styleUrls: ['./main-menu.component.scss']
})
export class MainMenuComponent implements OnInit {
  constructor() { }
  ngOnInit() { }
}

SRC /应用/网页/家/ home.module.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { HomeComponent } from './home.component';
import { HomeRoutingModule } from './home-routing.module';
import { PagesSharedModule } from 'src/app/pages/pages-shared/pages-shared.module';

@NgModule({
  imports: [
    CommonModule,HomeRoutingModule,PagesSharedModule
  ],declarations: [
    HomeComponent
  ]
})

export class HomeModule { }

SRC /应用/网页/家/ home.component.html

<app-main-menu></app-main-menu>

SRC /应用/网页/网页,routing.module.ts

...
{
  path: '',component: PagesComponent,children: [
    {
      path: '',pathMatch: 'full',loadChildren: './home/home.module#HomeModule'
    },{
      path: 'about',loadChildren: './content/content.module#ContentModule'
    },{ path: '**',component: PageNotFoundComponent }
  ]
},...

SRC /应用/网页/家庭/家庭routing.module.ts

{
  path: '',component: HomeComponent
}

我做错了什么?谢谢.

更新:令人难以置信!!!我停止了角度CLI&再次服务&现在它完全正常工作,代码没有任何变化.请留下这个说明,以防万一其他人面临同样的问题……

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读