我使用组件路由器,路由部分运行良好。但是,一旦模板加载(而不是之前),我无法弄清楚如何运行JS来修改模板。
例如,我想运行:
...
for (int i = 0; i < columnCount; i++) {
row[i] = rset.getString(i + 1);
}
System.out.println(Arrays.toString(row));
result.add(row);
...
但显然这不会运行直到加载预加载器div。
这样做的最佳做法是什么?我在OnInit上摆弄,但是在控制器中修改UI代码感觉很奇怪...错误...我的意思是,组件。
答案 0 :(得分:1)
我想说,试试css
动画。
使用.preloader
ElementRef
constructor(private _el: ElementRef) {
this.preloader = jQuery(this._el.nativeElement).find('.preloader');
}
此处有更多详情:How to use jQuery with Angular2?
在AfterViewInit
(https://angular.io/docs/ts/latest/guide/lifecycle-hooks.html#!#afterview)执行setTimeout
350毫秒并将课程更改为transition
(详情为https://stackoverflow.com/a/6943704/1267942)
更新:从Angular 2 RC4开始,动画效果非常好https://angular.io/docs/ts/latest/guide/animations.html(我还没有尝试过)