我在 Angular 应用程序中使用 ngx-datatable。我想知道是否可以将垂直滚动与自动行高一起使用。这意味着如果表格单元格中的文本变大,则行的长度将会扩展。如果设置属性 [rowHeight]="'auto'",则效果非常好。但是,当使用 [scrollbarV]="true" 时,由于使用了虚拟滚动机制,行高必须是一个数字。有人有解决方法吗?
<ngx-datatable
style="height: 700px;"
class="material"
[columnMode]="'flex'"
[headerHeight]="50"
[footerHeight]="40"
[rowHeight]="'auto'"
[scrollbarH]="true"
[scrollbarV]="true"
[rows]="data">
<ngx-datatable-column name="test" [flexGrow]="1" [minWidth]="120" [maxWidth]= "120">
<ng-template let-row="row" ngx-datatable-cell-template>
{{row}}
</ng-template>
</ngx-datatable-column>
<ngx-datatable-column name="test" [flexGrow]="1" [minWidth]="80">
<ng-template let-row="row" ngx-datatable-cell-template>
{{row}}
</ng-template>
</ngx-datatable-column>
</ngx-datatable>
Run Code Online (Sandbox Code Playgroud)
github 上有一个未解决的问题,但提出的解决方案不起作用。 https://github.com/swimlane/ngx-datatable/issues/1292
在 C# 中,可以将对象属性的名称作为字符串值获取。
nameof(object.myProperty) --> "myProprty"
这可以在 Javascript/Typescript 中完成吗?
Object.Keys() 是我唯一找到的东西,但它给了我所有的钥匙。
例如我想要实现的目标:
export interface myObject {
myProperty: string;
}
console.log(myObject["myProperty"]);
Run Code Online (Sandbox Code Playgroud)
假设我出于某种原因将界面更改为:
export interface myObject {
myPropertyOther: string;
}
console.log(myObject["myProperty"]); // This will not give an error on build
Run Code Online (Sandbox Code Playgroud)
所以我想要这样的东西:
console.log(myObject[nameOf(myObject.myProperty)]
// This will give an error on build when the interface is changed
Run Code Online (Sandbox Code Playgroud)