【问题标题】:Why is projectableNodes an any[][]?为什么 projectableNodes 是 any[][]?
【发布时间】:2017-05-13 08:15:11
【问题描述】:

我玩过

ViewContainerRef.createComponent

我想知道为什么参数 projectableNodes 是 any[][]。遗憾的是,目前尚未记录此参数。

在这个二维数组中传递什么?

祝愿, 曼弗雷德

【问题讨论】:

    标签: angular


    【解决方案1】:

    由于我们可以有多个 ng-content,我们可以为每个 ng-content 传递多个数组节点

    假设我们有以下动态组件:

    <ng-content></ng-content>
    <div class="container">
      <div class="sidebar">
          <ng-content></ng-content>
      </div>
      <div class="content">
          <ng-content></ng-content>
      </div>
    </div>
    

    因此,当我们动态创建组件时,我们可以为ng-content 的每个位置注入一个或多个节点:

    this.vcRef.createComponent(factory, this.vcRef.length, null, [
      [document.createTextNode('Top ng-content - Header')],
      [
        document.createTextNode('First ng-content'), 
        document.createElement('br'), 
        document.createTextNode('First ng-content second row')
      ],
      [
        document.createTextNode('Second ng-content'), 
        document.createElement('br'), 
        document.createTextNode('Second ng-content second row')
      ]
    ]);
    

    Plunker Example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-19
      • 2017-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多