我是新手,所以请耐心等待。我想要做的是让jquery在打字稿代码文件中工作。
我应该如何参考.d.ts代码?
我尝试了以下内容:
import * as $ from "jquery";
这给了我错误:"' jquery'解析为非模块实体,无法使用此构造导入"
然后我尝试了:import $ = require("jquery");
这会出现以下错误: 定位EcmaScript 2015模块时无法使用导入分配
如何使用jquery函数在我的打字稿代码中工作?还有其他方法吗?
我使用的是typescript 2.5.2,模块系统ES2015,EcmaScript 6和@ types / jquery。
修改
我试过import * as $ from "../wwwroot/lib/jQuery/dist/jquery.min.js"
;现在它给了我错误" ...已经解决了...但是 - allowJs没有设置"我还没有tsconfig.json ,我可能需要它用于--allowJs命令,是吗?
答案 0 :(得分:5)
在文件顶部添加对Typescript定义文件的引用。
/// <reference path ="jquery.d.ts"/>
而不是
import * as $ from "jquery";
根据DefinitelyTyped wiki:
TypeScript声明文件是定义类型和函数的方法 和外部第三方JavaScript库中的参数。通过使用 TypeScript代码中的声明文件将启用Intellisense 并对正在使用的外部库进行类型检查。
答案 1 :(得分:0)
我不知道这是一种正确的方式&#34;做事,但我在我的打字稿项目中使用以下行来使用jquery。
const jquery = require('jquery');
// and then later in your class
jquery('.someclass').show();
答案 2 :(得分:-1)
您应该在typescript组件中声明jquery,然后使用它。
declare var $: any;
declare var jquery: any;