2016-11-07 78 views
1

全部:如何让儿童组件像React的Angular 2中的this.props.children一样?

我是Angular2的新手,我不知道如何构建一个可以访问子组件像React的this.props.children的容器组件?

感谢

+0

你可以使用'@ ViewChildren':http://stackoverflow.com/a/36018562/5115768 – lenny

+1

@lenny谢谢但我没有完全理解它,因为我构建的是一个容器组件,我不知道用户将要放入哪个孩子,我怎样才能访问它?(我认为ViewChild用于引用已经在模板) – Kuan

回答

5

阵营你做

const Comp = ({ children }) => (
    <div class="wrapper">{children}</div> 
); 

在Angular2你做

@Component({ 
    selector: 'comp', 
    template: ` 
     <div class="wrapper"><ng-content></ng-content></div> 
    ` 
}) 
class Comp {} 
1

您需要使用您的@ViewChildren组件内部放置在组件内部访问的孩子。

此外,您要决定儿童放置在模板内的位置,您需要在模板的某个位置放置一个<ng-content></ng-content>