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

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跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/326649.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2015蓝桥杯省赛---java---B---7(牌型种数)

题目 牌型种数 思路分析 递归进行实现,弄好终止条件,牌的数目等于13 代码实现 package com.atguigu.lanqiao;public class Main { // 简单枚举private static int ans;public static void main(String[] args) {f(0, 0);System.out.println(ans);}…

CLR运行时细节 - 继承多态的实现

关于多态不多解释了,在运行时决定和调用具体的实现,是面向对象的基础 设计模式的基础.准备把继承多态和接口多态分开,因为从CLR实现的角度继承多态相比于接口多态要简单得多,也更容易理解,本篇只讨论继承多态, .NET Framework 2.0 和 4.0 这两个版本在实现上稍微有点区别(这里先…

2015蓝桥杯省赛---java---B---8(饮料换购)

题目 饮料换购 饮料换购乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去,但不允许赊账。请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么…

python123测验9程序题_python程序设计实验二

Python程序设计实验安徽工程大学班级:物流191 姓名:许岚岚 学号:3190505110日期:2020年3月21日指导教师:修 宇实验二 顺序结构程序设计(验证性实验)(二学时)【实验目的】(1)掌握数据的输入输出的方法&#…

Rider IDE恢复了对.NET Core调试的支持

近期发布的JetBrain的Rider IDE(EAP17)移除了对.NET Core调试支持。该功能与NuGet的一个软件包在许可上存在冲突,而EAP17使用NuGet提供的.NET Core项目调试功能,所以必须要移除该功能。为此,JetBrains迅速推出了Rider …

2016蓝桥杯省赛---java---B---1(煤球数目)

题目 煤球数目 思路分析 代码实现 package com.atguigu.lanqiao;import java.util.Scanner;public class Main { // 简单枚举public static void main(String[] args) { // 171700int pre 1;int plus 2;long sum 1;for (int k 2; k < 100; k) {sum (pre plus); //…

vue 多页面多模块分模块打包 分插件安装_Vue渲染方式

Vue中的渲染方式总结可分四种:原有模板语法&#xff0c;挂载渲染使用render属性&#xff0c;createElement函数直接渲染使用render属性&#xff0c;配合组件的template属性&#xff0c;createElement函数渲染使用render属性&#xff0c;配合单文件组件&#xff0c;createElemen…

零配置 之 Spring注解实现Bean定义

转载自 零配置 之 12.3 注解实现Bean定义 ——跟我学spring3 12.3 注解实现Bean定义 12.3.1 概述 前边介绍的Bean定义全是基于XML方式定义配置元数据&#xff0c;且在【12.2注解实现Bean依赖注入】一节中介绍了通过注解来减少配置数量&#xff0c;但并没有完全消除在XML…

开源库 Natasha2016 ,让IL编程跑起来

背景&#xff1a; IL编程在普通的程序员的代码里几乎不会出现&#xff0c;但从Json.net、Dapper、Asp.net等等开源项目都体现出了IL编程的重要性。 在IL编程的时候&#xff0c;上百行甚至上千行的IL代码实在让人头大&#xff0c;调试不方便不说&#xff0c;IL编程的逻辑也是不同…

代码随想录27期|Python|Day24|回溯法|理论基础|77.组合

图片来自代码随想录 回溯法题目目录 理论基础 定义 回溯法也可以叫做回溯搜索法&#xff0c;它是一种搜索的方式。 回溯是递归的副产品&#xff0c;只要有递归就会有回溯。回溯函数也就是递归函数&#xff0c;指的都是一个函数。 基本问题 组合问题&#xff08;无序&…

指纹识别软件安装包下载

微信关注公众号&#xff1a;1111的博客&#xff0c;回复“指纹识别”&#xff0c;即可获取指纹识别安装包的下载链接。本软件的版本为指纹识别2.0应用程序&#xff0c;在安装的过程中有以下几个注意点【一定要看】&#xff1a;安装完成之后直接运行&#xff1a;指纹识别.exe文件…

2016蓝桥杯省赛---java---B---2(生日蜡烛)

题目描述 生日蜡烛 思路分析 代码实现(方式一) package com.atguigu.TEST;class Main{public static void main(String[] args) {int sum236;int a0;//记录开始过生日的年龄for (int i 0; i < 100; i) {for (int j i; j < 100; j) {aaj;if(asum){System.out.printl…

ntp时间同步会导致mysql关闭吗?_ntp时间同步问题解决方法

http://www.pool.ntp.org/zone/asia0.asia.pool.ntp.org1.asia.pool.ntp.org2.asia.pool.ntp.org3.asia.pool.ntp.org2.1 注册表信息修改PDC配置外部时间源设置#config external NTP serverw32tm.exe /config /manualpeerlist:”0.asia.pool.ntp.org,1.asia.pool.ntp.org,2.asi…

javaSE视频教程正式启动

亲爱的小伙伴们&#xff1a;经过激烈的思想斗争之后&#xff0c;我决定了&#xff0c;决定什么呢&#xff1f;决定给大家送福利了&#xff01;对&#xff0c;是送福利了&#xff01;送什么福利呢&#xff1f;送教程&#xff0c;javaSE的教程免费送&#xff0c;主要还是由我来讲…

快速搭建本地 .NET Core 运行时调试环境

需要的软件环境&#xff1a; Oracle VM VirtualBoxCentOS 7llvm lldb 3.6.0 (3.5.0我试过 dumpobj时候一直报无效参数 Invalid parameter T_T) 先在VirtualBox创建新虚机&#xff1a;一路 Next &#xff0c;文件位置可以自定义下(默认是在Users/当前用户/.. 目录下)创建完选在设…

背包问题+图解

图解 代码实现 package com.atguigu.dynamic;/*** 创建人 wdl* 创建时间 2021/4/3* 描述*/ public class KnapsackProblem {public static void main(String[] args) {int[] w{1,4,3};//物品的重量int[] val{1500,3000,2000};//物品的价值 这里的val[i]就是前面的v[i]int m4;/…

java循环结构教程

循环的语法我发一下&#xff1a;while( 布尔表达式 ) {//循环内容}do {//代码语句}while(布尔表达式);for(初始化; 布尔表达式; 更新) {//代码语句}今天录制了一下java 的循环结构视频&#xff0c;包括while,do while以及for循环&#xff0c;时间有点长&#xff0c;所以大家看的…

想和你一起为 Visual Studio 庆祝20岁生日

Visual Studio Live 倒计时开始…… 1997年1月28日&#xff0c;Visual Stuido 97正式推出&#xff0c;她将Visual Basic、Visual C、Visual J、Visual Foxpro、Visual InterDev聚合在一起&#xff0c;并且这个让人着迷的“小妖精”&#xff0c;统揽天下20年尚未有退位的意思。 …

2016蓝桥杯省赛---java---B---3(凑算式)

题目描述 凑算式 思路分析 通分 代码实现 package com.atguigu.TEST;class Main{static int a[]{1,2,3,4,5,6,7,8,9};static int ans;public static boolean check(){int xa[3]*100a[4]*10a[5];int ya[6]*100a[7]*10a[8];if((a[1]*ya[2]*x)%(y*a[2])0&&a[0](a[1…

微软.NET年芳15:我在Azure上搭建Photon服务器(C#.NET)

摘录网上的“.NET 15周年”信息如下&#xff1a; 微软的 .NET 框架本周迎来了 15 岁生日。.NET 的第一个版本在 2002 年 2 月 13 日作为的 Visual Studio.NET 的一部分首次公开亮相。过去 15 年&#xff0c;.NET 框架从一个流行的闭源软件开发平台&#xff0c;变成了一个开源的…