Angular 4项目,jquery无法正常工作

时间:2017-06-15 04:53:28

标签: jquery angular

我尽我所能,最后我用jquery来解决我的情况。但是,我无法使用jquery来处理我的Angular 4项目。

  • jQuery是通过我的index.html上的CDN加载的,包括缩小和未压缩的版本。
  • $和jQuery变量都在组件中声明,在导入的正下方,类型为any。
  • 在ngOnInit和ngAfterViewInit上我尝试更改元素的背景颜色,只是为了检查它是否正常工作,但元素仍在那里,没有变化。
  • 没有控制台错误。
  • 如果我去浏览器控制台并运行jQuery方法来改变颜色,它就可以正常工作。

所以,这就是我试图改变这个元素的颜色的方式,最后因为我仍然无法在我的Angular 4项目中使用jQuery。

jQuery(this.eleRef.nativeElement).find("#xyz").css("background", "blue");
jQuery("#xyz").css("background", "blue");
$(this.eleRef.nativeElement).find("#xyz").css("background", "blue");
$("#xyz").css("background", "blue");

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我不知道这是一个Angular bug还是别的什么。但是,顾名思义,ngAfterViewInit应该正确设置视图以处理dom元素,但是,如果你不使用纯JavaScript,情况并非如此。

为了解决这个问题,我创建了一个控件,它只在ngAfterViewChecked上执行一次,以便使用JQuery设置我需要的元素并使其工作。

希望它可以帮助别人。