Skip to content

🐛 ExtensibleTableComponent columnWidths signal not working - missing parentheses in template #23789

@yinchang0626

Description

@yinchang0626

Is there an existing issue for this?

  • I have searched the existing issues

Description

The columnWidths property in ExtensibleTableComponent is defined as a computed signal but the template is accessing it as a regular property without parentheses, causing column width settings to be ignored.

Reproduction Steps

Create an EntityProp with custom columnWidth:

EntityProp.create({ name: 'myColumn', type: ePropType.String, displayName: 'My Column', columnWidth: 150 })

Use ExtensibleTableComponent in your template
Observe that the column uses auto-width instead of the specified 150px

Expected behavior

The column should have a width of 150px as specified in the columnWidth property.

Actual behavior

The column uses auto-width sizing, completely ignoring the columnWidth setting. All custom column widths are ignored.

Regression?

This appears to be introduced when upgrading to Angular Signals. The template was not updated to use proper signal syntax. Root cause: Template accesses computed signal as property instead of calling it as a function.

Known Workarounds

Create a custom ExtensibleTableComponent with corrected template
Override the component template in your application

Version

9.3.4

User Interface

Angular

Database Provider

EF Core (Default)

Tiered or separate authentication server

None (Default)

Operation System

Windows (Default)

Other information

The commit 0f23ce6 refactored column width handling to use Angular signals and computed properties, but the HTML template wasn't updated accordingly.

Affected file: extensible-table.component.html

Lines to fix:

Line 40: [maxWidth]="columnWidths[0] ?? undefined" should be [maxWidth]="columnWidths()[0] ?? undefined"
Line 41: [width]="columnWidths[0] ?? 200" should be [width]="columnWidths()[0] ?? 200"
Line 42: [canAutoResize]="!columnWidths[0]" should be [canAutoResize]="!columnWidths()[0]"
Line 60: [width]="columnWidths[i + 1] ?? 200" should be [width]="columnWidths()[i + 1] ?? 200"
Line 61: [canAutoResize]="!columnWidths[i + 1]" should be [canAutoResize]="!columnWidths()[i + 1]"
Environment: ABP Framework: 9.3.4 Angular: 20.0.0 Package: @abp/ng.components

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions