Changelog History
Page 1
-
v5.2 Changes
June 19, 2020๐ ๐ We're pleased to announce the release of ReactJS.NET 5.2. In this release:
Templates
โก๏ธ 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
The
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:vendor.8faee7f5.js main-0c14766b.js
๐ง Configure reading these files server-side with
config.SetReactAppBuildPath("~/dist");
wheredist
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 intoscript
andstyle
tags for the browser to download.The
reactnet-webpack
sample uses this layout, so give it a try if you're curious!Thanks
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
Cheers,
Dustin -
v5.1.2 Changes
November 25, 2019๐ ๐ We're pleased to announce the release of ReactJS.NET 5.1.2. A few small updates in this release:
- โก๏ธ .NET Core 3.0 support. The tutorial project has also been updated to demonstrate the (simple!) migration path.
- โก๏ธ React and ReactDOM updated to 16.12.0
- ๐ Fix missing query parameter mapping for React.Router - thanks @mattywong
Please report any bugs in the issue tracker.
Cheers!
-
v5.0.0 Changes
July 19, 2019๐ We're pleased to announce the release of ReactJS.NET 5.0.0. This release brings a few new features as well as a bunch of minor improvements:
- โก๏ธ Typescript compilation of .tsx components, which also updates to Babel 7 (#763)
- Output caching improvements - (#858)
- ๐ JSON.NET v12 support - (#779)
- ๐ .NET Core 3 preview support - (#791)
- ๐ Source link and symbol server support - (#830), ebb22ee
- โก๏ธ React and ReactDOM updated to 16.8.6
๐ Thanks to the following developers for contributing to this release: @Daniel15, @dustinsoftware, @gunnim, @Taritsyn, @vanillajonathan
๐ The release packages are available via NuGet.
Cheers!
-
v4.1.1 Changes
April 23, 2019๐ฑ Binaries available from NuGet directly ๐
๐ New to 4.1:
- โก๏ธ Updated bundled version of React to 16.8.4, which brings support for hooks
- โก๏ธ Updated babel to 6.26.3. We're working on enabling opt-in support for Babel 7 as well, but if you need this today, please use the webpack integration.
- โก๏ธ Updated the ASP.NET and .NET Core samples to demonstrate integrating third party libraries, such as Reactstrap.
๐ New to 4.0:
- โก๏ธ Updated bundled version of React to 16.7 (you can always provide your own version of React if you need a newer version)
- This library is now MIT licensed
- ๐ Javascript engines are no longer automatically registered. See the getting started pages on .NET Framework and .NET Core for more information about how to register a specific Javascript engine in your app.
- JavaScriptEngineSwitcher and JSPool have been updated as a part of this change.
- Further reading for JavaScriptEngineSwitcher: How to upgrade applications to version 3.X
- ๐ Support for faster Javascript engine initialization via the
AllowJavaScriptPrecomplilation
setting - ๐ Server side rendering support for
- React Router
- React Helmet
- CSS-in-JS libraries
- The API is also publicly extendable, so you can write a custom integration without requesting a change to this library by implementing this interface
- Lots of contributions from the community
๐ We'd like to hear from you! If there are things you'd like to see added, please send feedback via Github Issues. We're a limited team and may not be able to implement what you'd like to see, but still want to hear how this project is being used and where it could be improved.
-
v4.1.0
February 16, 2019 -
v4.0.0 Changes
January 11, 20192018-07-21
-
v4.0.0-beta2
July 21, 2018 -
v4.0.0-beta1
July 01, 2018 -
v3.4.1
August 14, 2018 -
v3.4.0 Changes
July 09, 2018๐ This is a minor release with a few performance-related changes contributed by Daniil Sokolyuk:
- #529 - Cache whether component names are valid.
- #528 - Fast React ID generator.
- #532 - Avoid large object allocations and reuse everything.
A few other changes have also been included. Thanks to Dustin Masters for most of these changes:
- #558 - Fix crashes related to loading React 16.4.1
- #541 - Use
ReactDOM.render
rather thanReactDOM.hydrate
for ClientOnly components. Thanks to Suhail Ansari for his first open-source contribution! :) - #537 - Added benchmarking tool for benchmarking changes to ReactJS.NET itself.
๐ ReactJS.NET 4.0 beta has also been released. This release includes all the above changes, and also upgrades JavaScriptEngineSwitcher to 3.0.0 beta. Upgrade instructions can be found in the How to upgrade applications to version 3.X document.