将TypeScript与jQuery一起使用时,参考文件不存在

时间:2012-10-26 05:50:19

标签: javascript jquery typescript

我使用VS2012插件和网络基础创建了我的第一个TypeScript文件:

///<reference path='/Scripts/jquery/jquery.d.ts' />
/*jslint browser: true*/
/*jslint vars: true */
/*global $, jQuery*/
/*global ajaxOnFailure, doAddSubmit, doResetTabs*/
/*global mvcOnFailure, updateGridMeta*/

function alertWin(title, message) {
    $.modal({
        content: '<p class="align-center">' + message + '</p>',
        title: title,
        minWidth: 150,
        maxWidth: 900,
        maxHeight: 600,
        width: false,
        buttons: {
            'Ok': function (win) { win.closeModal(); }
        }
    });
}

我将参考文件从解决方案拖放到文件顶部并确实存在。

然而,只要它被拖动,我就会在它下面写一条红线,说“引用的文件不存在”。我还注意到它似乎无法识别我脚本中的$

这是我的目录结构:

/Scripts
/jquery/jquery.d.ts
/Shared/dialog/functions/file1.ts <-- the file above

注意:

当我将.ts文件放在与file1.ts相同的目录中并按如下方式引用时,它可以工作:

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

所以我的问题是:

如何在一个地方安装我的jquery.d.ts并从我的文件中引用它?

2 个答案:

答案 0 :(得分:5)

您需要使用相对于脚本的引用路径(使用..) - 您不能只是要求从root计算。

答案 1 :(得分:0)

请参阅此回答Using jQuery plugin in TypeScript

  

jQuery插件(和其他基于插件的库)的问题在于,您不仅需要基础库的library.d.ts文件,还需要每个插件的plugin.d.ts文件。不知何故,这些plugin.d.ts文件需要扩展library.d.ts文件中定义的库接口。幸运的是,TypeScript有一个很棒的小功能,可以让你做到这一点。