$ events变量可以以角度重命名吗?

时间:2017-10-26 17:23:52

标签: javascript angular events

我有以下角度组件:

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

@Component({
  selector: 'app-corkpit',
  templateUrl: './corkpit.component.html',
  styleUrls: ['./corkpit.component.css']
})
export class CorkpitComponent implements OnInit {

  /* 
    @Output is used when u need to emit an event from a child 
    component to the parent (Opp. to what @Input does in the server component !) 
  */
  @Output() serverCreated = new EventEmitter<{ serverName: string , serverContent: string }>();
  @Output() blueprintCreated = new EventEmitter<{ serverName: string , serverContent: string }>();

  newServerName = '';
  newServerContent = '';

  constructor() { }

  ngOnInit() {
  }

  onAddServer() {
    this.serverCreated.emit({ 
      serverName : this.newServerName , 
      serverContent: this.newServerContent 
    })
  }

  onAddBlueprint() {
    this.blueprintCreated.emit({ 
      serverName : this.newServerName , 
      serverContent: this.newServerContent 
    })
  }

}

正如你所看到的,我有两个功能,我发出事件,如下:

  onAddServer() {
    this.serverCreated.emit({ 
      serverName : this.newServerName , 
      serverContent: this.newServerContent 
    })
  }

  onAddBlueprint() {
    this.blueprintCreated.emit({ 
      serverName : this.newServerName , 
      serverContent: this.newServerContent 
    })
  }

现在在父组件的模板文件中,我有以下标记:

<app-corkpit
  (serverCreated)="onServerAdded($event)" 
  (blueprintCreated)="onBlueprintAdded($event)" 
  ></app-corkpit>

在这里,您会看到在激活serverCreated事件时,会调用以下函数:

onServerAdded($event)

该函数有一个传递给它的变量$event现在,如果我将此$event改为$data我的应用程序中断,那么我的问题是这个$event变量是不是重命名为我喜欢的任何东西?就像在jQuery中,如果一个函数接受一个事件作为一个参数,它可以是event或只是e或几乎任何我喜欢的东西。

1 个答案:

答案 0 :(得分:2)

除了分配Angular存储库并修改其代码之外,无法重命名$event

重命名也没有意义,因为只会让其他人更难理解代码而没有任何值得一提的好处。