Microsoft发布了一系列工具用于快速生成基于JavaScript的Web应用,这些工具包含了dotnet new和对Node.js的巧妙运用。

dotnet new命令是.NET Core工具的一部分,它用简单的命令行语法创建(spin up)新项目。现在新工具已成为ASP.NET Core的JavaScript服务的组成部分,Web开发人员可以使用同样的命令,基于模板创建新的单页应用(SPA,Single Page Applications)。

Steve Sanderson在一篇文章中介绍,这些模板的初衷在于简化项目的初始化工作:

我们常听到使用Angular或React构建的SPA应用是如何的复杂。其中的挑战在于如何能很好地集成服务器端和客户端代码,或是如何从一开始就选定富有成效的项目配置。

这些工具依赖NuGet软件包Microsoft.AspNetCore.SpaTemplates。一旦安装了该软件包,就可以使用如下命令创建angular、react、reactredux、aurelia和knockout等模板,:

dotnet new reactredux

这些模板被打包放在GitHub上。因为它们也是.NET Core工具,所以安装任一模板都会创建一个服务于某个客户端SPA的ASP.NET应用。这里所说的“angular”是指Angular 2以上的应用,采用了“仅用于Angular”的术语。

对于那些熟悉Node.js和NPM的JavaScript社区成员,create-react-app和Angular CLI为创建这类应用提供了一种简单方法。对于来自Microsoft环境的开发人员,基于.NET的dotnet new方法为他们提供了更为熟悉的方法。但是从某种程度上说,这些新的.NET工具默认就提供了很全面的功能。

例如,angular和reactredux模板默认包括了服务器端预渲染(可以关闭该功能)。所有这些项目类型都使用了Webpack 2绑定前端代码,并且除了aurelia模板外,默认都设置了Hot Module Replacement。

鉴于新工具是一个.NET应用,它仍然要通过SpaServices使用Node.js。SpaServices使用Microsoft.AspNetCore.NodeServices允许ASP.NET开发人员无需实际运行Node.js目录即可利用Node.js生态系统。Sanderson说这些都是在“后台”进行的。

举个例子,为预渲染服务器上的Angular或React组件,该工具要在服务器端执行你的JavaScript。这是通过NodeServices实现的,NodeServices启动一个隐藏的Node.js实例,并提供一种快速的和鲁棒的方式从.NET调用该实例。

Sanderson也是knockout.js的创建者。

原文地址:http://www.infoq.com/cn/news/2017/02/dotnet-new-javascript-spa


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

Microsoft发布新工具,简化JavaScript Web应用的创建相关推荐

  1. 新一波 JavaScript Web 框架

    本文来自InfoQ中文站,原作者FrontEndMastery,译者Sambodhi,策划Tina 太过保守很难在 Javascript 生态系统中保持与时俱进.对于那些刚进入这个行业的人来说,要在新 ...

  2. 工赋开发者社区 | 新一波JavaScript Web框架

    这篇文章让读者们了解为什么新的 JavaScript Web 框架扩散如此迅速,并且对大规模的问题和创新的最新发展进行了深入的探讨. 太过保守很难在 Javascript 生态系统中保持与时俱进.对于 ...

  3. 阿里发布新工具,直接帮你改代码!网友:工作量又减轻了~

    欢迎关注方志朋的博客,回复"666"获面试宝典 来自:掘金,作者:阿里妈妈前端快爆 链接:https://juejin.cn/post/6977259197566517284 Vu ...

  4. 谷歌发布新的 Node.js Web 渲染界面 Carlo

    谷歌发布Carlo的早期版本,这是谷歌实验室用来创建Node.js应用的实验性项目.Carlo使用Puppeteer实现Node.js应用和Chrome Web浏览器之间的通信. \n 在使用Web技 ...

  5. WSAS和Eclipse简化了Web服务的创建

    存档日期:2019年5月15日 | 首次发布:2008年3月4日 今天,我们到处都有Web服务. 您很有可能需要为正在开发的任何新应用程序或功能创建Web服务. 不久之前,这可能是一个痛苦的提议. W ...

  6. 谷歌发布TF新工具:计算速度提升2倍,减少无效参数

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一顿操作后,需要实时模糊背景的视频,看起来流畅了不少: 实时目标检测的延迟也更低了: 这是谷歌特意为移动设备和Web端开发的一系列新工具,可 ...

  7. html5制作交互式课件,网易科技频道--Hot Potatoes 教你如何制作交互式Web课件的新工具...

    交互式课件可以让学生在课后对课堂的内容做充分的复习和训练,我想大多数老师都常用Powerpoint或Authorware制作交互式课件,今天向大家介绍一款制作交互式Web课件的新工具--Hot Pot ...

  8. Github发布名叫“依赖图”(Dependency Graph)新工具

    据了解,最近Github发布名为"依赖图"(Dependency Graph)的新工具,很多人都不太了解,下面就一起来看看吧. 在今日于旧金山 Pier 70 举办的 Github ...

  9. 45个必备的JavaScript Web开发工具

    JavaScript是一种灵活多变的脚本语言,它在全世界被广泛的应用在Web页面和服务器应用中.你可以因为任何目的去使用它,但是你需要一些工具.幸运的是,为了完成独特的任务,无以计数的JavaScri ...

最新文章

  1. MySQL 学习笔记(2)— 通配符/正则表达/运算符
  2. TestNG并行测试
  3. cmd命令打开文本文档_震惊!我竟然通过控制台打开了QQ!
  4. 这才是真正的男人的格局
  5. Effective Java之注解优于命名模式(三十五)
  6. 在mvc4里怎样引用:System.Web.Optimization和entityframework
  7. 前端学习(2566):vue的生命周期
  8. supervisord安装使用简记
  9. 打开usb计算机连接怎么办,iqoo3怎么打开usb调试?iqoo3开启usb调试连接电脑的方法...
  10. PLT hook与Inline hook
  11. PHP的压力测试工具ab.exe 和mpm介绍提高并发数
  12. Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216  java c# php js.docx
  13. 手机怎么更改ip地址
  14. 如何在Internet Explorer中使用VARCHART XGantt控件?
  15. 大组合数取模hdu5698 瞬间移动
  16. 台式计算机调亮度快捷键,处理电脑调亮度快捷键如何调整屏幕亮度呢?
  17. html双击变成可编辑状态,JS实现双击编辑可修改状态的方法
  18. 谈VI设计的审美情趣
  19. 2022年秋招提前批总结(海尔智家)
  20. 《Python编程从入门到实践》16.2.6收盘价均值,代码理解

热门文章

  1. MySQL-5.5.33主从复制
  2. corosync和pacemaker实现httpd和mysql双集群
  3. UIButton的竖排图片和文本
  4. .Net Core 读取文件时中文乱码问题的解决方法
  5. 使用云原生应用和开源技术的创新攻略
  6. .net core ——微服务内通信Thrift和Http客户端响应比较
  7. 面向.NET开发人员的Dapr——机密
  8. 池化对象 RecyclableMemoryStream 在 .netcore 中的使用
  9. Web API实现微信公众平台开发-接收数据Post
  10. 推荐:Dapper扩展-Dapper.SimpleCRUD