如何解决" ReferenceError:$未定义"?

时间:2016-08-02 05:49:47

标签: angular

我正在尝试在angular2中使用jquery并出现此错误:ReferenceError:$未在以下代码中定义。

声明var $:JQueryStatic;

export class AppComponent {    

ngOnInit() {    

    var container = $("#contact-us-form");    

    container.css("width", $(document).width()).css("height", $(document).height()).hide();    

    container.find(".modal-content .button-close").click(function(){ this.toggleModalWindow("contact-us-form"); });    

    $("#contact-link").click(function(){ this.toggleModalWindow("contact-us-form"); });    

   }     
}      

我怎么解决这个问题?

3 个答案:

答案 0 :(得分:3)

遵循这些步骤:

  1. npm i jquery --save
  2. npm i @types/jquery -D
  3. import * as $ from 'jquery' ---> 在app.module.ts
  4. 这应该可以解决问题,无需在每个文件中添加declare var jQuery: any;declare var $: any;

答案 1 :(得分:2)

添加angular-cli.json

 "../node_modules/jquery/dist/jquery.js"

有一个打字稿文件

  import * as $ from "jquery";

使用npm

安装jquery

答案 2 :(得分:0)

尝试这些步骤-

  1. npm install jquery @ types / jquery --save
  2. 转到项目中的angular.json,在脚本中添加“ node_modules / jquery / dist / jquery.min.js”:[]。
  3. 重新加载项目。