| Microsoft發(fā)布了一組工具,使用他們的dotnet-new工具和使用Node.js的靈活方法可以快速生成基于JavaScript的Web 應(yīng)用程序。 dotnet-new工具是.NET Core工具的一部分,用于使用簡單的命令啟動一個新項目。作為ASP.NET Core JavaScript Services的一部分,Web開發(fā)人員現(xiàn)在可以使用相同的命令來啟動新的單頁應(yīng)用程序(SPA)。 Steve Sanderson在一篇文章中寫道,使用這些模板的目的是讓初始更容易:“我們經(jīng)常聽說構(gòu)建這些應(yīng)用程序(使用Angular或React的SPA)很復(fù)雜。將服務(wù)器端和客戶端代碼集成到一起可能是一個挑戰(zhàn),甚至只是最初選擇一個高效的項目計劃?!?/p> 這些項目類型的可用性取決于Microsoft.AspNetCore.SpaTemplates NuGet包。一旦安裝完成,使用這樣的命令可以讓angular、react、reactredux、aurelia和knockout啟動:dotnet new reactredux 這些模板的源代碼在GitHub中。由于這是一個.NET Core工具,安裝這些模板之一會創(chuàng)建一個ASP.NET應(yīng)用程序?!癮ngular”是一個Angular 2+應(yīng)用程序。 在JavaScript社區(qū)的其他地方,諸如create-react-app和Angular CLI等選項為大家熟知的Node.js和NPM提供了一種簡單的方式來啟動這些應(yīng)用程序?;赿otnet-new的.NET為開發(fā)人員提供了他們可能更熟悉Microsoft環(huán)境選項。但是,在某些方面,這些新的.NET工具會更全面。 例如,angular和reactredux模板包括了默認(rèn)的服務(wù)器端呈現(xiàn)(它可以被關(guān)閉)。所有這些項目類型都使用Webpack 2來捆綁前端代碼(除了aurelia模板),默認(rèn)情況下已啟用Hot Module Replacement。 雖然這是一個.NET應(yīng)用程序,但它仍然通過SpaServices來使用Node.js。SpaServices使用Microsoft.AspNetCore.NodeServices來讓ASP.NET開發(fā)人員使用Node.js系統(tǒng),而不直接實際運行Node.js。Sanderson說,這一切都發(fā)生在“幕后”:例如,要在服務(wù)器上預(yù)生成Angular或React組件,它需要在服務(wù)器上執(zhí)行JavaScript。它通過NodeServices來實現(xiàn),它啟動隱藏的Node.js實例并提供一種可以快速穩(wěn)健的從.NET中進(jìn)行調(diào)用方法。 Sanderson也是knockout.js的創(chuàng)造者。 | 
|  |