moh*_*sen 5 viewchild angular-universal angular
我正在尝试访问 Angular2 中的 div,如下所示:
import { Component, ViewChild, ElementRef, AfterContentInit } from '@angular/core';
@Component({
selector: 'main',
template: `
<div #target class="parent">
<div class="child">
</div>
</div>
`
})
export class MainComponent implements AfterContentInit {
@ViewChild('target') elementRef: ElementRef;
ngAfterContentInit(): void {
var child = this.elementRef.nativeElement.querySelector('div');
console.log(child);
}
}
Run Code Online (Sandbox Code Playgroud)
但我得到以下异常:
异常:调用节点模块失败并出现错误:TypeError:this.elementRef.nativeElement.querySelector 不是函数
该模板用于angular2-universal服务器端渲染。
https://github.com/angular/universal#universal-gotchas
尝试:
import { Component, AfterContentInit, ViewChild, ElementRef } from '@angular/core';
@Component({
selector: 'main',
template: `
<div #target class="parent">
<div class="child">
</div>
</div>
`
})
export class MainComponent implements AfterContentInit {
@ViewChild('target') elementRef: ElementRef;
constructor(private renderer: Renderer) {}
ngAfterContentInit(): void {
var child = (this.elementRef.nativeElement as any).querySelector.apply(this.elementRef.nativeElement, ['div']);
console.log(child);
}
}
Run Code Online (Sandbox Code Playgroud)
https://angular.io/guide/migration-renderer
| 归档时间: |
|
| 查看次数: |
16615 次 |
| 最近记录: |