React和Visual Studio 2013是一个很好的组合吗?

时间:2015-11-19 21:49:40

标签: .net visual-studio reactjs babeljs

我正在从头开始编写一个全新的应用程序,这一直是查看一些新的时尚技术的一个很好的借口。我对这个项目的选择是ReactJS。

我们是微软的商店,所以我们的后端都是C#和.NET,我们使用Visual Studio 2013.前端可以是我选择的任何东西。

我做的第一件事是阅读ReactJS tutorial,这似乎是直截了当的。但是,第一件事就是我在实际上没有实际有效的JavaScript中的JavaScript。经过进一步调查,它似乎是基于某种称为Babel的模板技术,它是一种JavaScript编译器(或更准确地说是变换器),用JavaScript编写。这可以在Web浏览器中运行,也可以在服务器上运行,作为某种构建步骤。显然,出来的将是有效的JavaScript。这似乎会导致Visual Studio 2013中出现各种问题。

我希望尽可能地遵循教程,我想我会跳过所有服务器端的东西,只是在客户端上运行Babel。我首先为这些库寻找一个NuGet包,但找不到任何包。巴别塔网站says to use the ReactJS.Net package。这个包似乎是针对JSX文件的服务器端编译,并且不包含可以在客户端使用的.js文件。我决定试验这条路线,但是当我创建一个.JSX文件时,一切都只是白色文本,没有语法高亮,代码完成,智能感知等等.Visual Studio可以追溯到黑暗时代。我无法以这种方式完成任何工作。

虽然很难说,我仍然不知道如何实际下载Babel。他们网站上的所有内容都指向某种包管理器。我最终只是手动链接到https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js,所以我可以继续处理。

接下来,我尝试链接到名为example.js的脚本,以便编写一些代码。在MVC / Razor中,您可以使用类似@Scripts.Render("~/bundles/example")的内容来添加<script>标记,但似乎没有将type属性设置为text/babel的机制。所以,现在我无法利用框架的酷脚本捆绑功能。

搞砸了,我只是在页面中嵌入脚本:

<script type="text/babel">
  // I'll just write my code here
</script>

然而,现在Visual Studio的所有语法高亮,文档格式和Intellisense功能都完全失控。缩进级别搞砸了,几乎没有任何东西可用。

好的,这个帖子太长你的问题是什么?

所以我的问题是,如果人们使用Visual Studio和React,并且如果他们找到了一种方法来设置环境和IDE,他们仍然可以利用Visual Studio的强大功能,并使用React以富有成效的方式。如果是这样,我很想听听您的设置说明。您使用的是任何类型的Visual Studio插件吗?你在服务器或客户端上运行Babel吗?也许人们只是不使用Babel直接写入Javascript Babel最终会产生的东西?感谢您提供任何信息或建议!

1 个答案:

答案 0 :(得分:2)

我正在使用visual studio的Task Runner扩展(在使用VS2015时内置)它管理我的Gulp任务并使用我的JS代码babel构建。 它是非常简单和有用的,它在可视化工作室上打开解决方案时运行监视任务,我让他们提供一个ui来运行你在gulpfile \ gruntfile中可用的所有任务。

总结一下 - 我推荐Visual Studio的Task Runner扩展。