本文旨在帮助开发者在Visual Studio 2015中配置Angular 2的开发环境,以便能够顺利进行TypeScript开发和调试。作者在尝试配置过程中花费了大量时间,阅读了大量文章和社区讨论,但未能找到一个清晰的工作配置。本文基于作者使用Visual Studio 2015Community edition with Update 1和TypeScript版本1.7的经验编写。
以下是配置ASP.NET4.5.2模板以支持Angular 2开发的步骤:
1. 创建ASP.NETWeb应用程序项目,并为应用程序设置名称,例如WebApplication1。
2. 从ASP.NET 4.5.2模板列表中选择Web API项目模板。
3. 在项目根目录下添加package.json文件,并设置以下内容。
4. 在项目根目录下添加gulpfile.js文件,并定义以下脚本。
5. 右键点击gulpfile.js并选择“任务运行器资源管理器”。右键点击moveToLibs并选择“运行”。执行后,可以在Scripts/libs和Content/libs文件夹下找到复制的文件。
6. 在项目根目录下创建app文件夹。
7. 向app文件夹添加app.component.tsTypeScript文件。还可以在var test = null;行设置断点。
8. Visual Studio会询问是否为应用程序添加TypeScript支持。
9. 向app文件夹添加main.ts TypeScript文件。注意!必须在main.ts文件顶部添加以下引用,否则将遇到编译错误:///
10. 打开/Views/Shared/_Layout.cshtml并设置以下代码。注意!必须在System.config中定义meta,否则Visual Studio断点将无法工作。
11. 打开/Views/Home/Index.cshtml并设置以下代码。
12. 右键点击WebApplication1项目并选择“卸载项目”,然后选择“编辑WebApplication1.csproj”。注意!必须在Visual Studio WebApplication1.csproj项目文件中定义TypeScriptModuleKind和TypeScriptModuleResolution,否则Visual Studio断点将无法工作。
13. 编译并调试应用程序。
以下是配置ASP.NET 5模板以支持Angular 2开发的步骤:
1. 创建ASP.NET Web应用程序项目,并为应用程序设置名称,例如WebApplication2。
2. 从ASP.NET 5模板列表中选择Web API项目模板。
3. 在项目根目录下添加tsconfig.json文件(TypeScript JSON配置文件)。注意!必须在项目文件中定义module和moduleResolution,否则Visual Studio断点将无法工作。
4. 在项目根目录下添加package.json文件,并设置以下内容。
5. 在项目根目录下创建gulpfile.js文件,并定义以下复制脚本。
6. 右键点击gulpfile.js并选择“任务运行器资源管理器”。右键点击moveToLibs并选择“运行”。执行后,可以在Scripts/libs和Content/libs文件夹下找到复制的文件。
7. 在wwwroot文件夹下创建app文件夹。
8. 向wwwroot文件夹添加app.component.ts TypeScript文件。还可以在var test = null;行设置断点。
9. 向wwwroot文件夹添加main.tsTypeScript文件。记得在main.ts文件顶部添加以下引用,否则将遇到编译错误:///
10. 向wwwroot文件夹添加index.html文件。
11. 将index.html设置为启动页面。
12. 编译并运行应用程序。同时在TypeScript文件中设置一些断点并尝试调试。
在两种项目类型中,都有类似的配置来启用调试。实际问题不在于Angular,而在于Visual Studio与SystemJS模块加载器的兼容性不佳,后者用于启动Angular应用程序。这不是一个大问题,因为可以通过Visual Studio项目文件配置和SystemJS配置来解决这个问题。
在ASP.NET4.5.2项目模板中,必须在System.config中定义meta。同时,需要在Visual Studio WebApplication1.csproj项目文件中定义TypeScriptModuleKind和TypeScriptModuleResolution。