smapiot / piral

🚀 Framework for next generation web apps using micro frontends. ⭐️ Star to support our work!
https://piral.io
MIT License
1.71k stars 127 forks source link

Piral.Blazor Extension Duplication #602

Closed MarioBolivar closed 1 year ago

MarioBolivar commented 1 year ago

Piral.Blazor-Extensions-Issue

This repo reproduces a Piral.Blazor <Extension/> duplication issue

Bug Report

Environment Details and Version

OS: Windows 10 version 22H2 (Build 19045.2728) .NET 6 Piral.Blazor versions

Description

There currently exists an issue with Piral Blazor Extensions <Extension/> where nested extension components are duplicating exponentially as the number of nested layers grows. This is causing runtime issues where pages and components are incorrectly rendering.

Steps to Reproduce

Expected behavior

When registering nested piral blazor extensions <Extension/>, these extensions should render correctly within one another.

Actual behavior

When registering nested piral blazor extensions <Extension/>, these extensions render incorrectly and are duplicated. This issue is exacerbated as the number of nested extensions/layers grows.

Supporting Repo:

Please go to this (https://github.com/MarioBolivar/Piral.Blazor-Extensions-Issue/tree/master#environment-details-and-version) repo that is setup to easily reproduce this issue. Note: The README in the repo also provides some additional helpful information

MarioBolivar commented 1 year ago

This issue occurs in both Piral.Blazor v6/.NET 6 and v7/.NET 7

FlorianRappl commented 1 year ago

This issue occurs with nested extensions by not cancelling the rendering event (i.e., propagation is not stopped and every boundary also renders...). We'll fix this with the 0.15.13 release (to be released by Monday). Thanks for reporting!

MarioBolivar commented 1 year ago

Thank you for your help and blazing fast remediation, @FlorianRappl! Kudos to you! 😄 🎉