Почему событие @output выдает ошибку «Ошибка типа: _co.XXXXX не является функцией» - PullRequest
0 голосов
/ 09 июля 2019

Запись дочернего компонента Angular, и он не может убедить родителя захватить значение, переданное через @Output.Выдает ошибку, что получатель _co.pinEvent не определен.Однако во время инициализации отладчик показывает, что он успешно выполняет вызов.Так что это не простая опечатка.

Следовал каждому руководству и вопросу, которые я мог найти, сократить его до минимального примера, и до сих пор не могу заставить его работать.Ссылка на компонент _co, похоже, указывает на что-то отличное от домашнего компонента.

home.module.ts

...
import { KeypadComponent } from '../keypad/keypad.component';

@NgModule({
...
  declarations: [HomePage, KeypadComponent]
})
export class HomePageModule {
    digits: number;
    title: string;
    change: any;

    constructor() {
    }

    pinEvent($event) {
         console.log(JSON.stringify($event));
    }

}

home.page.html

<ion-content>
    <ble-lock-keypad (pinValue)="pinEvent($event)"></ble-lock-keypad>

  Once the component is visible, any event emitted
  from child causes this pinEvent() call to fail on
  an undefined reference.
</ion-content>

keypad.component.ts

@Component({
  selector: 'ble-lock-keypad',
  templateUrl: './keypad.component.html'
})
export class KeypadComponent {
    @Output() pinValue: EventEmitter<string> = new EventEmitter<string>();

    constructor() {
     }

    handleInput(key: string) {
        this.pinValue.emit(key);
    }

}

keypad.component.html

<ion-button (click)="handleInput('1')">1</ion-button>

Устал видеть эту ошибку:

Ошибка типа: _co.pinEvent не являетсяфункция.(В _co.pinEvent ($ event) '_co.pinEvent' не определено)

Может кто-нибудь указать, что идет не так?

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