Angular2从另一个类

时间:2017-05-01 06:33:24

标签: angular typescript ionic2 angular2-template angular2-directives

我想访问从父类到子类的方法。

我的父类是

 export class Parent{
     constructor() {}
     present() {
     }
 }

我的孩子班是:

export class Child {
    constructor() {}
    submit(){  
        this.toast.present(); 
    }
}

我想从子类中的父类调用present()方法。

3 个答案:

答案 0 :(得分:0)

您可以使用super关键字从儿童

调用的方法
class Parent{
     constructor() {}
     present() {
         console.log("I am from parent")
     }
}

class Child extends Parent{
     constructor() {
         super();
     }

    submit(){  
        super.present(); 
    }
}

let x = new Child();
x.submit();

答案 1 :(得分:0)

您可以使用 @Output 装饰器发送活动。

您的子组件应为:

import { Component, Input, Output, EventEmitter } from '@angular/core';
@Component({
selector: 'child',
templateUrl: 'child.html',
})

export class Child {
@Output() notify: EventEmitter<string> = new EventEmitter<string>();

constructor() {}
submit(){  
    this.notify.emit();


  }
}

在父类模板中:

<child (notify)="toast.present();"></child >

答案 2 :(得分:0)

  1. ECMA 6.0 中引入了 extends 关键字,该关键字与JAVA完全相似。 此关键字用于通过创建可以访问父类的所有成员的子类来扩展类。

  2. 要访问Parent类的任何成员,我们使用&#34; super &#34;关键字。

    代码如下:

    class Parent {              constructor(){

             }
    
             present() {
    
             }
         }
    
    
            class Child extends Parent {
              constructor() {
                super();
              }
    
              submit(){  
                super.present();   // here **super** represents an instance of Parent class
              }
    
            }