Angular 5事件发射器和输出未到达父函数

Angular 5事件发射器和输出未到达父函数,angular,typescript,angular5,eventemitter,Angular,Typescript,Angular5,Eventemitter,我已经尽可能多地搜索,并尝试了所有关于这些问题的选项,但都没有结果。我有一个按钮,应该切换到黑暗模式,所以我发送一个布尔值给家长,以改变网页的背景颜色。这就是我正在做的: 儿童 这是html文件 <mat-toolbar class="mat-elevation-z5" color="primary"> <h1 class="first">firstName</h1><h1 class="second">SecondName</h1>

我已经尽可能多地搜索,并尝试了所有关于这些问题的选项,但都没有结果。我有一个按钮,应该切换到黑暗模式,所以我发送一个布尔值给家长,以改变网页的背景颜色。这就是我正在做的:

儿童

这是html文件

<mat-toolbar class="mat-elevation-z5" color="primary">
<h1 class="first">firstName</h1><h1 class="second">SecondName</h1>
<button class="dark-mode" *ngIf="isLight" matTooltip="Bit too bright?" matTooltipPosition="before" (click)="changeMode()"><mat-icon>brightness_low</mat-icon></button>
<button class="light-mode" *ngIf="isDark" matTooltip="Bit too dark?" matTooltipPosition="before" (click)="changeMode()"><mat-icon>brightness_high</mat-icon></button>
</mat-toolbar>
我遇到的问题是,我的console.log语句从未显示,我猜这意味着它不是发出事件的事件

任何帮助都将不胜感激。我不认为我遗漏了任何明显的东西


谢谢

在您的子组件中,您需要通过调用changeMode()来发出事件。当调用
changeMode()
时,可以通过修改init函数发出事件,如下所示:

  ngOnInit() {
    this.isDark = false;
    this.isLight = true;
    this.changeMode();
  }
当调用
changeMode()
时,您应该看到控制台日志

你说你有一个按钮可以切换黑暗模式。在html模板中:

<button (click)="changeMode()">Change</button>
更改

Ahh抱歉,没有包含我的孩子的HTML。在子HTML中,我有一个按钮,在底部显示您建议的内容,每次我单击该按钮时,都会调用
changeMode()
,但它从未到达父代码,因此我看不到父.ts fileStrange中的
console.log
输出…当您在子HTML中向changeMode()添加console.log时,你看到它在那里开火了吗?如果你有回购协议,我可以看一下。嗨,亚历克斯,它确实在changeMode()中正确启动了。我现在已经解决了这个问题。在对我的原始帖子的评论中^。我在app.module.ts的bootstrap部分包含了我的所有文件,这就是问题所在!谢谢你好,Alex,它在changeMode()内正确启动。我现在已经解决了这个问题。在对我的原始帖子的评论中^。我在app.module.ts的bootstrap部分包含了我的所有文件,这就是问题所在!谢谢你,你可以把你的代码添加到@Dakota中吗?我现在添加了一些简化的代码,因为我使用了很多有角度的材料。它似乎没有加载,但主要的代码块就在那里。你能看到吗?抱歉,更新了stackblitz。以下是URL:@Dakota您应该在引导中删除main组件:[AppComponent],只保留AppComponent,@Dakota非常感谢!!完全修好了!一个问题,引导部分具体用于什么?
import { Component, EventEmitter } from '@angular/core';
import * as jQuery from 'jquery';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {

  isDarkMode(event: boolean) {
    console.log(event);
  }
}
  ngOnInit() {
    this.isDark = false;
    this.isLight = true;
    this.changeMode();
  }
<button (click)="changeMode()">Change</button>