最佳答案
希望问题很简单。
我想在触发 Angular2等效的 $document.ready ()时运行一个脚本。实现这一目标的最佳方法是什么?
我试过把脚本放在 index.html
的末尾,但是我发现,这样不行!我认为它必须包含在某种组件声明中?
是否可以从 .js
文件运行加载脚本?
编辑-代码:
我在应用程序中插入了以下 js 和 css 插件(来自 Foundry html 主题)。
<link href="css/themify-icons.css" rel="stylesheet" type="text/css" media="all" />
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" media="all" />
...
<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/flexslider.min.js"></script>
...
<script src="js/scripts.js"></script> //This initiates all the plugins
如前所述,scripts.js“实例化”了整个过程,因此需要在 Angular 准备好之后运行
成功了:
import {Component, AfterViewInit} from 'angular2/core';
@Component({
selector: 'home',
templateUrl: './components/home/home.html'
})
export class HomeCmp implements AfterViewInit {
ngAfterViewInit() {
//Copy in all the js code from the script.js. Typescript will complain but it works just fine
}