jQuery脚本没有在Angular v4上加载

时间:2017-05-04 14:44:23

标签: jquery angular

我有一个拥有2千行JQuery脚本的模板。最初我用角度版本1得到它并且它在那里工作得很好,但是当在Angular 4上导入它时,似乎在doc准备就绪时没有加载JQuery。

在文件的最后,我有:

(function($) {
  'use strict';
  // Initialize layouts and plugins
  (typeof angular === 'undefined') && $.Pages.init();
})(window.jQuery);

也许与Angular版本或类似的东西有关。无法弄明白。

1 个答案:

答案 0 :(得分:0)

在查看有关ngAfterViewInit

的Angular文档后解决了我的问题
import { Component, ElementRef } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'app works!';

  constructor(private _elementRef:ElementRef) {};

  ngAfterViewInit() {
    var s = document.createElement("script");
    s.type = "text/javascript";
    s.src = "../assets/js/pages.js";
    this._elementRef.nativeElement.appendChild(s);
  }
}

https://angular.io/docs/ts/latest/api/core/index/AfterViewInit-class.html