aspnet / JavaScriptServices
- четверг, 14 июля 2016 г. в 03:12:45
C#
Microsoft ASP.NET Core JavaScript Services
This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the Home repo.
JavaScriptServices
is a set of technologies for ASP.NET Core developers. It provides infrastructure that you'll find useful if you use Angular 2 / React / Knockout / etc. on the client, or if you build your client-side resources using Webpack, or otherwise want to execute JavaScript on the server at runtime.
This repo contains:
Everything here is cross-platform, and works with .NET Core 1.0 RC2 or later on Windows, Linux, or OS X.
If you want to build a brand-new ASP.NET Core app that uses Angular 2 / React / Knockout on the client, consider starting with the aspnetcore-spa
generator. This lets you choose your client-side framework, and generates a starting point that includes applicable features such as Webpack dev middleware, server-side prerendering, and efficient production builds.
See: getting started with the aspnetcore-spa
generator. It's much easier than configuring everything to work together manually!
If you have an existing ASP.NET Core application, or if you just want to use the underlying JavaScriptServices packages directly, you can install these packages using NuGet and NPM:
Microsoft.AspNetCore.NodeServices
Microsoft.AspNetCore.SpaServices
NodeServices
package to implement its features.Microsoft.AspNetCore.AngularServices
SpaServices
package and includes features specific to Angular 2. Currently, this includes validation helpers and a "cache priming" feature, which let you pre-evaluate ajax requests on the server so that client-side code doesn't need to make network calls once it's loaded.There was previously a Microsoft.AspNetCore.ReactServices
but this is not currently needed - all applicable functionality is in Microsoft.AspNetCore.SpaServices
, because it's sufficiently general. We might add a new Microsoft.AspNetCore.ReactServices
package in the future if new React-specific requirements emerge.
If you want to build a helper library for some other SPA framework, you can do so by taking a dependency on Microsoft.AspNetCore.SpaServices
and wrapping its functionality in whatever way is most useful for your SPA framework.
Inside this repo, the templates
directory contains the application starting points that the aspnetcore-spa
generator emits. If you want, you can clone this repo and run those applications directly. But it's easier to use the Yeoman tool to run the generator.
Also in this repo, the samples
directory contains examples of using the JavaScript services family of packages with Angular 2 and React, plus examples of standalone NodeServices
usage for runtime code transpilation and image processing.
To run the samples:
cd samples/angular/MusicStore
)dotnet restore
and npm install
)dotnet run
)If you're interested in contributing to the various packages, samples, and project templates in this repo, that's great! You can run the code in this repo just by:
dotnet restore
at the repo root dircd templates/Angular2Spa
)npm install
)dotnet run
)If you're planning to submit a pull request, and if it's more than a trivial fix (e.g., for a typo), it's usually a good idea first to file an issue describing what you're proposing to do and how it will work. Then you can find out if it's likely that such a pull request will be accepted, and how it fits into wider ongoing plans.