2017-08-29 65 views
0

我正在尝试将TypeScript的演示文稿放到我的开发团队的其余部分中。我试图向他们展示类型检查,但是,我无法弄清楚为什么这个示例代码在编译时没有在“.notafunction”调用中失败。 ???为什么TypeScript允许未定义的方法?

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

 
function greeting(person : any) { 
 
    return "Hello " + person + "!"; 
 
} 
 

 
$(document).ready(function() { 
 
    var user = ".Net Development Team"; 
 

 
    $("#greeting-header").notafunction(greeting(user)); 
 

 
});

+0

它确实会导致编译器错误。也许分享你的'tsconfig'会有帮助吗? 我也看到你正在通过''包括jquery typings。从技术上讲,这应该起作用,但您可能想切换到推荐的安装类型为NPM模块的方式。您可能想要咨询此链接https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/ – dade

+0

我改变了导入导入*作为$从“jquery “; –

+0

@dade - 感谢您的回应。 我改为导入到 import * as $ from“jquery”; 我已经尝试使用tsconfig.json和没有。我这增加了一个: { “compileOnSave”:真实, “compilerOptions”:{ “noEmitOnError”:真 } } 我删除了我的脚本/分型/ jQuery和使用NPM尝试: NPM安装 - -save @ types/jquery MS Build在npm-modules \ @types \ jquery中找不到定义 我将该文件夹添加到我的项目中,并且再次编译所有内容。它没有捕获notafunction()调用。 您收到的错误是什么? –

回答

1

好,我敢肯定,这个问题有什么做的打字稿及分型的内部VS2017。

脚本/分型/ jquery的/已安装有

Install-Package jquery.TypeScript.DefinitelyTyped -Version 3.1.2

jquery.d.ts是不同于node_modules \ @types \ jquery的\ index.d.ts与

npm install --save @types/jquery

安装我终于能够获得打字稿在VS2017之外安装,并且我得到了关于JQuery的相同错误。当我切换回类型没有更多的错误。

谢谢您的信息。

相关问题