Reputation: 7729
I have a component with Width and Height properties. How can I bind component's view height and width to these properties?
I need them to be updated whenever component size changes too, i.e. by re-sizing the browser window.
Upvotes: 13
Views: 16165
Reputation: 48505
Use (window:resize)="onResize($event)"
to listen to global events. You can use window
, document
or body
as targets. See this plunk
@Component({
selector: 'my-app',
template: `
<div
class="square"
[style.width.px]="width"
[style.height.px]="height"
(window:resize)="onResize($event)"
></div>
`
})
export class App {
width = 100;
height = 100;
onResize(event) {
this.width += 100;
this.height += 100;
}
}
Upvotes: 33