🚀 We're pleased to announce the release of ReactJS.NET 5.2. In this release:
This update contains a brand new feature - templates! This feature makes it much easier to get started on a new project.
To start a new ASP.NET Core project using React and server-side rendering:
dotnet new -i React.Template dotnet new reactnet-webpack dotnet run
reactnet-vanilla template is also available for projects that don't need webpack.
Webpack Asset Manifest Support #
If you've ever wanted to use hashes in the filenames of generated assets, this feature is for you! When using Webpack and
webpack-manifest-plugin, it's now possible to render the script and style tags automatically from the generated asset manifest. This can be especially helpful when using caching headers to instruct the client not to refetch these static assets from the server.
If using the filename pattern
'[name].[contenthash:8].js', webpack will emit files that look like this:
Configure reading these files server-side with
dist is the directory where webpack emits the built assets.
In your view code, call:
@Html.ReactGetStylePaths() // in the doucment head next to other stylesheets @Html.ReactGetScriptPaths() // right before the body closing tag
Next, define an asset manifest format in your webpack config. Check out the sample webpack config for the format the asset manifest is expected to follow.
At render time, the asset manifest will be read from the
dist directory and be mapped into
style tags for the browser to download.
reactnet-webpack sample uses this layout, so give it a try if you're curious!
If this library has made a difference to you in either a work or personal project, I'd love to hear from you. We don't get paid at all to work on this, it's just for fun! Drop a line @dustinsoftware or @Daniel15