加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular2等价于$document.ready()

发布时间:2020-12-17 08:27:24 所属栏目:安全 来源:网络整理
导读:简单的问题,我希望。 我想运行一个脚本当$ document.ready()的Angular2等价物被触发。什么是实现这个的最好的方法? 我试过把脚本放在index.html的末尾,但是我发现,这不工作!我认为它必须在某种类型的组件声明? 是否可以从.js文件运行加载脚本? 编辑
简单的问题,我希望。

我想运行一个脚本当$ document.ready()的Angular2等价物被触发。什么是实现这个的最好的方法?

我试过把脚本放在index.html的末尾,但是我发现,这不工作!我认为它必须在某种类型的组件声明?

是否可以从.js文件运行加载脚本?

编辑 – 代码:

我有以下js和css插件注入我的应用程序(从Foundry html theme)。

<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准备好之后运行。 script.js

工作原理:

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
    }
你可以在你的Angular根组件的ngOnInit()中自己触发一个事件,然后在Angular之外监听这个事件。

这是Dart代码(我不知道TypeScript),但不应该难以翻译

@Component(selector: 'app-element')
@View(
    templateUrl: 'app_element.html',)
class AppElement implements OnInit {
  ElementRef elementRef;
  AppElement(this.elementRef);

  void ngOnInit() {
    DOM.dispatchEvent(elementRef.nativeElement,new CustomEvent('angular-ready'));
  }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读