在Angular2应用程序中无法识别JQuery

时间:2016-08-05 16:07:00

标签: jquery angular

在我的Angular2应用程序中,虽然我已在我的应用程序中安装了jQuery,但尚未识别$。

这是我的Package.json

 "dependencies": {
    "angular2": "2.0.0-beta.7",
    "bootstrap": "^3.3.6",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "jQuery": "^1.7.4",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.2",
    "systemjs": "0.19.22",
    "zone.js": "0.5.15"
  },

不幸地排成一行:

Observable.fromEvent($("#name"),"keyup")

它抱怨

[ts] 
Cannot find name '$'.

代码有什么问题?

3 个答案:

答案 0 :(得分:1)

首先,您必须将jquery import写入主html文件。
然后你必须安装jquery的打字:

typings install dt~jquery --global --save

然后,在组件文件中声明$ var:

declare var $:JQueryStatic;

然后你可以在组件类中使用它:

export class FooComponent {
  constructor() {
    console.log($);
  }
}

答案 1 :(得分:0)

使用此命令安装jQuery后执行此操作

  

npm install jquery

declare var $: JQueryStatic;

答案 2 :(得分:0)

只需3个步骤即可完成:

1 - 安装jQuery定义 - * .d.ts 文件:

typings install dt~jquery --global --save

2 - 在HTML文件中添加脚本标记:

<script src="node_modules/jquery/dist/jquery.min.js" />

3 - 现在你可以使用它。不需要声明任何jQuery或$变量,因为打字已经为你做了。周期。

Observable.fromEvent($("#name"),"keyup");