相关疑难解决方法(0)

手动注入服务

我有分量B,C,D从类继承A.

我想在课堂上使用一个服务A,但我不知道如何注入它,而不是从孩子那里注入它.

我尝试的是正常注入: constructor(pageName: string = null, translate: TranslateService) { 但是当我super()构建类时A,它会抛出错误,因为我没有提供第二个参数.

有没有办法使用Angular 2注入父类?

我被迫使用的Angular版本是:2.2.1

编辑:

一些示例案例:我有很多页面,每个页面都可以显示一个加载器.我不想每次都注入加载器,而是从每个页面管理加载器,我想:

export class BaseComponent {
    constructor(private loader: LoadingService) {}

    showLoading() {
        this.loader.show();
    }
}
Run Code Online (Sandbox Code Playgroud)

然后从组件本身继承:

@Component({
    selector: "page-login",
    providers: [UsersService],
    templateUrl: "login.html"
})
export class LoginPage extends BaseComponent {
    constructor(private usersService: UsersService) {
        super();
    }
}
Run Code Online (Sandbox Code Playgroud)

现在LoginPage有一个showLoading来自它的父方法.

angular

23
推荐指数
2
解决办法
1万
查看次数

标签 统计

angular ×1