我在努力
$(function(){
alert('Hello');
});
在Visual Studio中显示此错误:(TS)无法找到名称“$”..我如何使用jQuery与TypeScript ?
我在努力
$(function(){
alert('Hello');
});
在Visual Studio中显示此错误:(TS)无法找到名称“$”..我如何使用jQuery与TypeScript ?
当前回答
我相信你可能需要JQuery的Typescript类型。既然你说你使用Visual Studio,你可以使用Nuget来获取它们。
https://www.nuget.org/packages/jquery.TypeScript.DefinitelyTyped/
Nuget Package Manager Console中的命令为
Install-Package jquery.TypeScript.DefinitelyTyped
更新:正如评论中提到的,这个包自2016年以来就没有更新过。但你仍然可以访问他们的Github页面https://github.com/DefinitelyTyped/DefinitelyTyped并下载这些类型。导航到库的文件夹,然后在那里下载index.d.ts文件。弹出它在你的项目目录的任何地方,VS应该立即使用它。
其他回答
我相信你可能需要JQuery的Typescript类型。既然你说你使用Visual Studio,你可以使用Nuget来获取它们。
https://www.nuget.org/packages/jquery.TypeScript.DefinitelyTyped/
Nuget Package Manager Console中的命令为
Install-Package jquery.TypeScript.DefinitelyTyped
更新:正如评论中提到的,这个包自2016年以来就没有更新过。但你仍然可以访问他们的Github页面https://github.com/DefinitelyTyped/DefinitelyTyped并下载这些类型。导航到库的文件夹,然后在那里下载index.d.ts文件。弹出它在你的项目目录的任何地方,VS应该立即使用它。
步骤1。 我使用的是yarn,你可以安装jQuery & jQuery的类型下面的cmd。
yarn add jquery
yarn add @types/jquery -D
步骤2 在你的tsx文件中添加
import jquery from 'jquery';
const $: JQueryStatic = jquery;
步骤3: 你可以把jQuery添加到react组件中。
useEffect(() => {
$(() => {
console.log("Hello JQuery!");
});
}, []);
这对我来说很管用:
export var jQuery: any = window["jQuery"];
你可以通过扩展窗口接口来声明全局变量:
import jQuery from '@types/jquery';
declare global {
interface Window {
jQuery: typeof jQuery;
$: typeof jQuery;
}
}
来源:
https://stackoverflow.com/a/12709880/4642023 https://mariusschulz.com/blog/declaring-global-variables-in-typescript#augmenting-the-window-interface
就我而言,我必须这么做
npm install @types/jquery --save-dev // install jquery type as dev dependency so TS can compile properly
npm install jquery --save // save jquery as a dependency
然后在脚本文件A.ts
import * as $ from "jquery";
... jquery code ...