Angular 使用ngContainer还是ngTemplate?

Angular 使用ngContainer还是ngTemplate?,angular,kendo-ui-angular2,Angular,Kendo Ui Angular2,我有一个网格,标题很长。海德书名包含两个词。如果我不使用可调整大小的列,就很难看到标题。所以我想把标题分成两行;每行显示一个单词。例如,标题标题为Company VeryVerylongName。我想分为公司和公司 我想我可以在剑道ui列中使用ngContainer或ngTemplate 那么选择是什么呢 或 如果使用嵌套结构指令,如*ngIf或*ngFor 可能有令人讨厌的语法,如果您需要要标记的视图片段,可以使用该语法。: 如果使用嵌套结构指令,如*ngIf或*ngFor 可能有令人讨厌的语

我有一个网格,标题很长。海德书名包含两个词。如果我不使用可调整大小的列,就很难看到标题。所以我想把标题分成两行;每行显示一个单词。例如,标题标题为Company VeryVerylongName。我想分为公司和公司

我想我可以在剑道ui列中使用ngContainer或ngTemplate

那么选择是什么呢

或 如果使用嵌套结构指令,如*ngIf或*ngFor

可能有令人讨厌的语法,如果您需要要标记的视图片段,可以使用该语法。

: 如果使用嵌套结构指令,如*ngIf或*ngFor


可能有令人讨厌的语法,如果您需要要标记的视图片段,可以使用它。

可以为列设置所需的宽度,并使用样式属性“空白:正常”

用于设置自定义剑道网格标头模板

:

空格序列被折叠。中的换行符 源代码的处理方式与其他空白相同。线断为 填写行框所必需的

因此,整个代码应该如下所示:

<kendo-grid [data]="gridData">
      <kendo-grid-column field="Id" >
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="Company VeryVerylongName" [width]="180">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              <span style="white-space: normal">{{column.field}}({{columnIndex}})</span>
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="Contact VeryVerylongName">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="ContactTitle">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column> 
        <kendo-grid-column field="City">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
    </kendo-grid>

可以在中看到。

可以为列设置所需的宽度,并使用样式属性“空白:正常”

用于设置自定义剑道网格标头模板

:

空格序列被折叠。中的换行符 源代码的处理方式与其他空白相同。线断为 填写行框所必需的

因此,整个代码应该如下所示:

<kendo-grid [data]="gridData">
      <kendo-grid-column field="Id" >
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="Company VeryVerylongName" [width]="180">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              <span style="white-space: normal">{{column.field}}({{columnIndex}})</span>
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="Contact VeryVerylongName">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
        <kendo-grid-column field="ContactTitle">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column> 
        <kendo-grid-column field="City">
            <ng-template kendoGridHeaderTemplate let-column let-columnIndex="columnIndex">
              {{column.field}}({{columnIndex}})
            </ng-template>
        </kendo-grid-column>
    </kendo-grid>
可以在上看到。

我认为这两种选择都不适合您的情况

是Angular元素,用于在主体元素上需要多个结构指令的情况,例如,在同一元素上需要*ngFor和*ngIf。在这种情况下,你可以把。一旦对模板求值,DOM中将只包含元素的内容,但会将其自身排除在外,这样就不会引入其他级别的HTML,这就是为什么不能将任何样式绑定到它的原因

另一方面,它的内容在默认情况下从不显示!它对于定义可重复块或某些回退的模板非常有用,但您必须显式地“调用”它,使其显示在屏幕上

一个非常流行的用例是ngIfElse用例:

你好{{name} 你好,陌生人! 如果定义了名称,您将在屏幕上看到带有名称的Hello,否则您将看到Hello anonymous。与ng容器类似,DOM中只包含ng模板的内容,而这个元素本身无法设置样式

在您的情况下,尝试使用简单的块并在其上添加一些样式,您应该能够实现您想要的

为了更好地理解,我建议您和

我认为这两种选择都不适合您的情况

是Angular元素,用于在主体元素上需要多个结构指令的情况,例如,在同一元素上需要*ngFor和*ngIf。在这种情况下,你可以把。一旦对模板求值,DOM中将只包含元素的内容,但会将其自身排除在外,这样就不会引入其他级别的HTML,这就是为什么不能将任何样式绑定到它的原因

另一方面,它的内容在默认情况下从不显示!它对于定义可重复块或某些回退的模板非常有用,但您必须显式地“调用”它,使其显示在屏幕上

一个非常流行的用例是ngIfElse用例:

你好{{name} 你好,陌生人! 如果定义了名称,您将在屏幕上看到带有名称的Hello,否则您将看到Hello anonymous。与ng容器类似,DOM中只包含ng模板的内容,而这个元素本身无法设置样式

在您的情况下,尝试使用简单的块并在其上添加一些样式,您应该能够实现您想要的


为了更好地理解,我建议您和

我考虑了简单块。例如,使用两个div。但是仍然需要这些块来放置容器。它不能直接放在剑道格栏中。这是我的问题…也许我们考虑了NG模板?我想到了简单的块。例如,使用两个div。但是仍然需要这些块来放置容器。它不能直接放在剑道格栏中。这是我的问题…也许我们考虑NG模板?