关注this question我遇到了另一个问题'。
基本上我有一个HTML主题,它需要在$document.ready()
中运行许多初始化代码(ngAfterViewInit
代码)。我的问题是,当我把它放在我的app.ts文件(根应用程序组件)中时,这不起作用,所以我不得不把它全部放到我创建的每一个组件中,这不是&#39 ;似乎没错。
我想知道我是否遗漏了一些明显的东西,或者在组件的其余部分加载之前app组件是否实例化了?
app.ts
import {Component, ViewEncapsulation, AfterViewInit} from 'angular2/core';
export class AppCmp implements AfterViewInit {
ngAfterViewInit() {
//All my document ready code here, which doesn't work
}
}
修改 我会尝试更具体一点。
相关代码可以是seen here。基本上所有代码都实例化并运行我的模态,视差,下拉等。等等。所有需要在角度初始化视图后运行的javascript并将其命名为ngAfterViewInit
。如果我将所有代码复制粘贴到我ngAfterViewInit
中的app.ts
,那么没有任何工作,模态,视差,手风琴等等。但是如果我将相同的代码放入特定的组件中(例如home.ts
})然后它工作得很好。希望这澄清。
假设我想在页面完全加载时运行以下命令:
setTimeout(function() {
$('.background-image-holder').each(function() {
$(this).addClass('fadeIn');
});
}, 200);
在app.ts中无法运行,但在home.ts中运行正常