Angular 2和jQuery

时间:2016-03-04 17:32:06

标签: jquery angular jspm

我试图通过jspm将jQuery添加到Angular 2项目(https://www.npmjs.com/package/generator-modern-web-dev)。 据我所知,我必须运行

jspm install jquery

然后使用

import {$} from "jquery"

在我的组件中。但是我收到错误Cannot find module 'jquery'。 我做错了什么?

5 个答案:

答案 0 :(得分:3)

无论包管理器如何,使用JavaScript库与框架的关系较少,而与集成到语言的工作方式有关。

对于TypeScript,您需要确保具有给定JavaScript库的类型定义。

您可以通过由Types Search on GitHubDefinitely Typed提供支持的types-publisher找到类型列表。

所以,对于通过NPM的jQuery类型......

npm install --save @types/jQuery

从那里,一定要在TypeScript文件中包含类型声明......

/// <reference path="jquery.d.ts" />

然后,像往常一样开始使用jQuery!

$(".button").css({ marginTop: value });

请参阅the Samples section of the TypeScript Language site中的jQuery示例。

答案 1 :(得分:0)

使用JSPM我相信它应该是

import $ from "jquery"

并确保使用

使TypeScript满意
declare var $;

答案 2 :(得分:0)

NPM我使用命令行使用

安装了jQuery
npm install jQuery --save

然后将依赖项导入Index.html文件

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

并在您的component类底部(导出类abc {}类型之外)

declare var jQuery: any

然后你就可以使用jQuery('#anything')....

答案 3 :(得分:0)

npm install jquery -s

导入到组件

import * as $ from 'jquery';

在组件中使用测试

console.log($); 在浏览器控制台F12中返回

这:function ( selector, context ) {

其他有关时刻的例子

npm install moment -s

import * as moment from 'moment';

答案 4 :(得分:0)

在Angular 2中,为了导入jquery,

import $ from "jquery"

你应该将密钥(jquery)与其源文件映射到 systemjs.config.js

'jquery': 'npm:jquery/dist/jquery.min.js',