sách gpt4 ăn đã đi

angular - NG2 : How can I access parent component generically?

In lại 作者:太空狗 更新时间:2023-10-29 17:05:51 26 4
mua khóa gpt4 giày nike

在开始之前请注意,我最初是在 angular2 github 站点上作为功能请求提出这个问题的。但是请求已关闭,建议我将其张贴在这里。在这里,我只是重复我最初的要求。但是,您可以通过以下链接找到一些讨论: https://github.com/angular/angular/issues/10448

我需要能够获得对父组件的一般引用,而子组件不必知道父组件的类型。基本上我需要这样的东西(伪代码):

    @Component({
template: ''
directives: [Child]
})
class ParentComponent{}

@Component({ selector: 'child' })
class ChildComponent{
constructor(@Parent() _parent: any){}
}

基本上我需要 ChildComponent của _parent 字段来引用 ParentComponent。但是请注意 _parent 的类型是 bất kì。它是 bất kì 因为它可以是任何字面意思。 ChildComponent 是一个通用组件,可以被任何类型的其他组件使用。我知道有解决这个问题的方法,但它们都需要 child 知道 parent 的类型。它是这样的:

    @Component({ selector: 'child' })
class ChildComponent{
constructor(_parent: ParentComponent){}
}

但同样,这对我不起作用,因为 ChildComponent 可以用在任何类型的其他组件中,而且谁都不知道另一个组件的类型。所以我需要的是一些通用的方法来注入(inject) ChildComponent 其在组件树中设置的父组件,而 ChildComponent 不知道父类型。有谁知道我怎样才能做到这一点?

câu trả lời hay nhất

Bạn có thể sử dụng Injector API同样。

对于 Angular2 最新版本和旧版本:

import { Injector } from '@angular/core';
import {AppComponent} from "./app.component";

@Component({ selector: 'child' })
class ChildComponent{
constructor(private inj:Injector){
let parentComponent = this.inj.get(AppComponent);
console.log(parentComponent);
}
}

关于angular - NG2 : How can I access parent component generically?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40025761/

26 4 0
Đề xuất bài viết: c - 什么是c中的省略号运算符
Đề xuất bài viết: c - Chuỗi [x] so với *Chuỗi++
Đề xuất bài viết: c - 32 位字的镜像位
Đề xuất bài viết: Angular2 + webpack 不部署robots.txt
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress