Skip to content

Commit e7b1752

Browse files
committed
fix: don't observe resize in ssr
1 parent 6a5afc9 commit e7b1752

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/material/form-field/directives/floating-label.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import {
1717
Output,
1818
} from '@angular/core';
1919
import {SharedResizeObserver} from '../resize-observer';
20+
import {Platform} from '@angular/cdk/platform';
2021

2122
/**
2223
* Internal directive that maintains a MDC floating label. This directive does not
@@ -70,6 +71,8 @@ export class MatFormFieldFloatingLabel implements OnDestroy {
7071

7172
private _ngZone = inject(NgZone);
7273

74+
private _platform = inject(Platform);
75+
7376
private _resizeObserver = inject(SharedResizeObserver);
7477

7578
private _stopResizeObserver = () => {};
@@ -91,12 +94,14 @@ export class MatFormFieldFloatingLabel implements OnDestroy {
9194
}
9295

9396
private _startResizeObserver() {
94-
this._stopResizeObserver();
95-
this._stopResizeObserver = this._ngZone.runOutsideAngular(() =>
96-
this._resizeObserver.observe(this._elementRef.nativeElement, () => this.resized.emit(), {
97-
box: 'border-box',
98-
}),
99-
);
97+
if (this._platform.isBrowser) {
98+
this._stopResizeObserver();
99+
this._stopResizeObserver = this._ngZone.runOutsideAngular(() =>
100+
this._resizeObserver.observe(this._elementRef.nativeElement, () => this.resized.emit(), {
101+
box: 'border-box',
102+
}),
103+
);
104+
}
100105
}
101106
}
102107

0 commit comments

Comments
 (0)