Blazor Update Adds Reusable Component Libraries

Microsoft has updated Blazor -- for full-stack Web apps coded in C# -- with new features including the ability to create reusable component libraries.

Blazor leverages the new WebAssembly project that converts higher-level language code to assembly-like code for performance better than JavaScript. WebAssembly also works with programming languages such as C, C++ and Rust. While Blazor/WebAssembly has been described as the "death" of JavaScript by some developers, Microsoft denies such a characterization, saying it's rather just another tool to be used, even in conjunction with JavaScript.

In fact, the Blazor 0.2.0 update announced this week allows for JavaScript interop as part of the new ability to create reusable component libraries.

A Blazor Component
[Click on image for larger view.] A Blazor Component (source: Microsoft).

"Blazor apps can call browser APIs or JavaScript libraries through JavaScript interop," Microsoft's Daniel Roth announced in a post. "Library authors can create .NET wrappers for browser APIs or JavaScript libraries and share them as reusable class libraries."

Those reusable libraries can provide Web UI components to be used in different projects while maintaining state and handling events. Developers can create the components, package and share them with others.

Other new features in the update include:

  • Improved syntax for event handling and data binding
  • Build on save in Visual Studio
  • Conditional attributes
  • HttpClient improvements

Roth thanked community volunteers for helping out with the improvements, noting that Blazor has already been put to use in developing real-world Web apps.

Meanwhile, WebAssembly itself is forging ahead, with v 1.0 shipping in four major browser engines. Mozilla, a primary backer of the project, recently offered up a Web-based IDE to code WebAssembly, though at this stage it's primarily a learning/fiddle (testing) type of project. With further refinement, its features could be provided to Visual Studio Code and other code editors/IDEs via extensions.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube