Saya mencoba menggunakan eventemitter tetapi saya tidak dapat menggunakannya. Saya cukup baru di sudut dan saya tidak mengerti apa yang terjadi! untuk apa yang saya lihat di posting lain, saya melakukan segalanya dengan benar! Saya mencoba mengirim array melalui komponen ke komponen lain. Halaman intervensi akan menjadi orang yang bertanggung jawab dan pemilik array ini, jadi setiap kali terjadi perubahan dalam array ini, saya ingin mengekspor data ke halaman sinkronisasi. Bisakah seseorang memberi tahu saya apa yang saya lakukan salah?

Saya mendapatkan kesalahan ini:

*Uncaught Error: Template parse errors:
Parser Error: Bindings cannot contain assignments at column 9 in [message=$event] in ng:///SyncPageModule/SyncPage.html@40:37 ("

  <ion-card>
      <app-intervention [eventTest]="[ERROR ->]message=$event"></app-intervention>
    <ion-item-divider>
        Acciones Pendientes ({{message}})
"): ng:///SyncPageModule/SyncPage.html@40:37
Can't bind to 'eventTest' since it isn't a known property of 'app-intervention'.*

Berikut kode saya:

IntervensiHalaman.ts

import { EventEmitter } from 'events';

@Component({
  selector: 'app-intervention',
  templateUrl: './intervention.page.html',
  styleUrls: ['./intervention.page.scss'],
})
export class InterventionPage implements OnInit {

  constructor(private router: Router,
    public alertController: AlertController) { }

  service: any;
  initialDate: string;
  endDate: string;
  initialTime: string;
  endTime: string;
  startingTime: string;
  teste_array: any = [];
  interventions: any = ["test", "teste", "testee"];
  @Output() public eventTest = new EventEmitter();

  sendsData() {
    this.interventions.push("testThroughClick");
    this.eventTest.emit(this.interventions.length);

    console.log("interventions length: ")
    console.log(this.interventions.length);
  }

SyncPage.ts

import { InterventionPage } from '../intervention/intervention.page';


@Component({
  selector: 'app-sync',
  templateUrl: './sync.page.html',
  styleUrls: ['./sync.page.scss'],
})
export class SyncPage implements OnInit {

  services: any = [];
  teste: string;
  teste_array: any = [];
  nr: any;
  public message = "";


  constructor(private interventionsPage: InterventionPage) {
     }

}

SyncPage.HTML

<ion-card>
      <app-intervention [eventTest]="message=$event"></app-intervention>
    <ion-item-divider>
        Acciones Pendientes ({{message}})
    </ion-item-divider>
</ion-card>
1
memyselfandi 10 Maret 2020, 13:31

1 menjawab

Jawaban Terbaik

Perubahan

import { EventEmitter } from 'events';

Untuk

import { EventEmitter } from '@angular/core';

Dan,

<app-intervention (eventTest)="message=$event"></app-intervention>
3
Adrita Sharma 10 Maret 2020, 10:38