Javascript 块作用域声明。。。TypeScript和Asp.net MVC 5

Javascript 块作用域声明。。。TypeScript和Asp.net MVC 5,javascript,c#,asp.net-mvc-5,typescript,Javascript,C#,Asp.net Mvc 5,Typescript,我尝试在asp.net mvc5项目类型脚本中使用。我创建app.ts文件并安装nuget软件包 jquery.TypeScript.DefinitelyTyped。 app.ts代码: /// <reference path="typings/jquery/jquery.d.ts"/> class TestClass { test(): void { alert("Taras TS"); } } window.onload = () =>

我尝试在asp.net mvc5项目类型脚本中使用。我创建app.ts文件并安装nuget软件包 jquery.TypeScript.DefinitelyTyped。 app.ts代码:

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

class TestClass {
    test(): void {
        alert("Taras TS");
    }
}

window.onload = () => {
    var tcs: TestClass = new TestClass();
    $('#taras').click(() => { tcs.test() });
};
//
类TestClass{
test():void{
警报(“塔拉斯TS”);
}
}
window.onload=()=>{
var tcs:TestClass=newtestclass();
$('#taras')。单击(()=>{tcs.test()});
};
这是非常简单的代码。然后我创建index.cshtml文件,其中创建了一些带有id='taras'的按钮,代码:

@{
    ViewBag.Title = "tmp";
}

<button id="taras"> TS EVENT </button>

@section scripts{
    <script src="@Url.Content("~/Scripts/app.ts")"></script>
}
@{
ViewBag.Title=“tmp”;
}
TS事件
@节脚本{
}
我认为这是一段健康的代码,但我在google chrome调试控制台中发现了下一个异常:

应用ts:3未捕获的语法错误:块作用域声明(let、const、, 函数、类)在严格模式外尚不受支持


为什么会这样?以及如何修复它,非常感谢。

Url.Content只将相对路径转换为绝对路径。它不会更改文件扩展名

浏览器无法读取您的.ts文件(因此出现错误,因为它不理解TypeScript语法)。将文件扩展名更改为已编译的.js文件:

@section scripts{
   <script src="@Url.Content("~/Scripts/app.js")"></script>
}
@节脚本{
}

Url.Content仅将相对路径转换为绝对路径。它不会更改文件扩展名

浏览器无法读取您的.ts文件(因此出现错误,因为它不理解TypeScript语法)。将文件扩展名更改为已编译的.js文件:

@section scripts{
   <script src="@Url.Content("~/Scripts/app.js")"></script>
}
@节脚本{
}

Url.Content仅将相对路径转换为绝对路径。它不会更改文件扩展名

浏览器无法读取您的.ts文件(因此出现错误,因为它不理解TypeScript语法)。将文件扩展名更改为已编译的.js文件:

@section scripts{
   <script src="@Url.Content("~/Scripts/app.js")"></script>
}
@节脚本{
}

Url.Content仅将相对路径转换为绝对路径。它不会更改文件扩展名

浏览器无法读取您的.ts文件(因此出现错误,因为它不理解TypeScript语法)。将文件扩展名更改为已编译的.js文件:

@section scripts{
   <script src="@Url.Content("~/Scripts/app.js")"></script>
}
@节脚本{
}