typescript函数参数类型意外令牌:

时间:2013-12-02 16:06:24

标签: typescript

只需遵循最简单的Typescript教程,在键入函数参数时,我就失败了。

function greeter(person: string) {
    return "Hello " + person;
}

var user = "Jack";

document.body.innerHTML = greeter(user);

但是当我加载页面时,我得到“意外的令牌:” - 浏览器正在尝试解析Javascript?我知道Tyescript会编译成JS,但我在这里遗漏了一些东西。

我正在使用Visual Studio 2013,使用jQuery.d.ts来键入它。

.ts正在通过TypeScriptCompile进行构建操作。

.aspx的正文如下所示:

<div>
    <script src="Scripts/Main.ts"></script>
</div>

2 个答案:

答案 0 :(得分:4)

您正在尝试直接包含.ts文件,浏览器无法理解。在这种情况下,它会遇到它遇到的第一个类型定义,即

中的分号

function greeter(person: string) {

您需要做的是将Scripts/Main.ts文件编译为Scripts/Main.js文件(VS2013应自动为您执行此操作),然后将其包含在.aspx源代码中。

要验证这一点,解决方案资源管理器中的+文件旁边应该有一个Main.ts符号,Main.js文件应位于该文件下。

答案 1 :(得分:0)

您需要引用JS文件而不是TS文件:

<div>
    <script src="Scripts/Main.js"></script>
</div>