File tree Expand file tree Collapse file tree 6 files changed +43
-20
lines changed
src/BootstrapBlazor/Components Expand file tree Collapse file tree 6 files changed +43
-20
lines changed Original file line number Diff line number Diff line change @@ -22,13 +22,13 @@ public class ErrorLogger : ComponentBase, IErrorLogger
2222 /// <inheritdoc/>
2323 /// </summary>
2424 [ Parameter ]
25- public bool ? EnableErrorLogger { get ; set ; }
25+ public bool EnableErrorLogger { get ; set ; } = true ;
2626
2727 /// <summary>
2828 /// <inheritdoc/>
2929 /// </summary>
3030 [ Parameter ]
31- public bool ? ShowToast { get ; set ; }
31+ public bool ShowToast { get ; set ; } = true ;
3232
3333 /// <summary>
3434 /// <inheritdoc/>
@@ -62,10 +62,6 @@ public class ErrorLogger : ComponentBase, IErrorLogger
6262 [ Parameter ]
6363 public Func < ErrorLogger , Task > ? OnInitializedCallback { get ; set ; }
6464
65- [ Inject ]
66- [ NotNull ]
67- private IOptionsMonitor < BootstrapBlazorOptions > ? Options { get ; set ; }
68-
6965 [ NotNull ]
7066 private BootstrapBlazorErrorBoundary ? _errorBoundary = default ;
7167
@@ -77,8 +73,6 @@ protected override void OnInitialized()
7773 base . OnInitialized ( ) ;
7874
7975 ToastTitle ??= Localizer [ nameof ( ToastTitle ) ] ;
80- EnableErrorLogger ??= Options . CurrentValue . EnableErrorLogger ;
81- ShowToast ??= Options . CurrentValue . ShowErrorLoggerToast ;
8276 }
8377
8478 /// <summary>
@@ -108,7 +102,7 @@ protected override void BuildRenderTree(RenderTreeBuilder builder)
108102 builder . CloseComponent ( ) ;
109103 }
110104
111- private RenderFragment ? RenderContent => ( EnableErrorLogger ?? false ) ? RenderError : ChildContent ;
105+ private RenderFragment ? RenderContent => EnableErrorLogger ? RenderError : ChildContent ;
112106
113107 private RenderFragment RenderError => builder =>
114108 {
Original file line number Diff line number Diff line change @@ -11,9 +11,9 @@ namespace BootstrapBlazor.Components;
1111public interface IErrorLogger
1212{
1313 /// <summary>
14- /// 获得/设置 是否开启全局异常捕获 默认 null 使用全局配置 <see cref="BootstrapBlazorOptions.EnableErrorLogger"/> 值
14+ /// 获得/设置 是否开启全局异常捕获 默认 true
1515 /// </summary>
16- bool ? EnableErrorLogger { get ; set ; }
16+ bool EnableErrorLogger { get ; set ; }
1717
1818 /// <summary>
1919 /// 获得/设置 自定义 Error 处理方法 默认 null
@@ -23,9 +23,9 @@ public interface IErrorLogger
2323 Task HandlerExceptionAsync ( Exception ex ) ;
2424
2525 /// <summary>
26- /// 获得 是否显示 Error 提示弹窗 默认 null 使用全局配置 <see cref="BootstrapBlazorOptions.ShowErrorLoggerToast"/> 值
26+ /// 获得 是否显示 Error 提示弹窗 默认 true
2727 /// </summary>
28- bool ? ShowToast { get ; }
28+ bool ShowToast { get ; }
2929
3030 /// <summary>
3131 /// 获得 Error Toast 弹窗标题 默认读取资源文件内容
Original file line number Diff line number Diff line change 126126 }
127127 else
128128 {
129- < ErrorLogger EnableErrorLogger = " @EnableErrorLogger " ShowToast = " @ShowErrorLoggerToast " ToastTitle = " @ErrorLoggerToastTitle"
129+ < ErrorLogger EnableErrorLogger = " @_enableErrorLogger " ShowToast = " @_showToast " ToastTitle = " @ErrorLoggerToastTitle"
130130 OnErrorHandleAsync = " OnErrorHandleAsync" OnInitializedCallback = " OnErrorLoggerInitialized" >
131131 @HandlerMain ()
132132 < / ErrorLogger >
147147 RefreshToolbarButtonIcon = " @RefreshToolbarButtonIcon" FullscreenToolbarButtonIcon = " @FullscreenToolbarButtonIcon"
148148 RefreshToolbarTooltipText = " @RefreshToolbarTooltipText" FullscreenToolbarTooltipText = " @FullscreenToolbarTooltipText"
149149 OnToolbarRefreshCallback = " OnToolbarRefreshCallback" TabHeader = " TabHeader"
150- Body = " @Main" NotAuthorized = " NotAuthorized!" NotFound = " NotFound!" NotFoundTabText = " @NotFoundTabText" >
150+ Body = " @Main" NotAuthorized = " NotAuthorized!" NotFound = " NotFound!" NotFoundTabText = " @NotFoundTabText"
151+ EnableErrorLogger = " EnableErrorLogger" ShowErrorLoggerToast = " ShowErrorLoggerToast"
152+ ErrorLoggerToastTitle = " @ErrorLoggerToastTitle" >
151153 < / Tab > ;
152154
153155 RenderFragment RenderFooter =>
Original file line number Diff line number Diff line change @@ -490,11 +490,19 @@ public partial class Layout : IHandlerException, ITabHeader
490490 [ NotNull ]
491491 private IStringLocalizer < Layout > ? Localizer { get ; set ; }
492492
493+ [ Inject ]
494+ [ NotNull ]
495+ private IOptionsMonitor < BootstrapBlazorOptions > ? Options { get ; set ; }
496+
493497 private bool _init ;
494498 private LayoutHeader ? _layoutHeader = null ;
495499
496500 private ITabHeader ? TabHeader => ShowTabInHeader ? this : null ;
497501
502+ private bool _enableErrorLogger => EnableErrorLogger ?? Options . CurrentValue . EnableErrorLogger ;
503+
504+ private bool _showToast => ShowErrorLoggerToast ?? Options . CurrentValue . ShowErrorLoggerToast ;
505+
498506 /// <summary>
499507 /// <inheritdoc/>
500508 /// </summary>
Original file line number Diff line number Diff line change @@ -431,6 +431,24 @@ public partial class Tab
431431 [ Parameter ]
432432 public ITabHeader ? TabHeader { get ; set ; }
433433
434+ /// <summary>
435+ /// 获得/设置 是否开启全局异常捕获 默认 null 读取配置文件 EnableErrorLogger 值
436+ /// </summary>
437+ [ Parameter ]
438+ public bool ? EnableErrorLogger { get ; set ; }
439+
440+ /// <summary>
441+ /// 获得/设置 是否显示 Error 提示弹窗 默认 null 使用 <see cref="BootstrapBlazorOptions.ShowErrorLoggerToast"/> 设置值
442+ /// </summary>
443+ [ Parameter ]
444+ public bool ? ShowErrorLoggerToast { get ; set ; }
445+
446+ /// <summary>
447+ /// 获得/设置 错误日志 <see cref="Toast"/> 弹窗标题 默认 null
448+ /// </summary>
449+ [ Parameter ]
450+ public string ? ErrorLoggerToastTitle { get ; set ; }
451+
434452 [ CascadingParameter ]
435453 private Layout ? Layout { get ; set ; }
436454
Original file line number Diff line number Diff line change 77
88namespace BootstrapBlazor . Components ;
99
10- internal class TabItemContent : IComponent
10+ class TabItemContent : IComponent
1111{
1212 /// <summary>
1313 /// Gets or sets the component content. Default is null
1414 /// </summary>
1515 [ Parameter , NotNull ]
1616 public TabItem ? Item { get ; set ; }
1717
18- [ CascadingParameter ]
19- private Layout ? Layout { get ; set ; }
18+ [ CascadingParameter , NotNull ]
19+ private Tab ? TabSet { get ; set ; }
2020
2121 private RenderHandle _renderHandle ;
2222
@@ -55,10 +55,11 @@ private RenderFragment RenderItemContent(RenderFragment? content) => builder =>
5555 builder . OpenComponent < ErrorLogger > ( 0 ) ;
5656 builder . AddAttribute ( 1 , nameof ( ErrorLogger . ChildContent ) , content ) ;
5757
58- var enableErrorLogger = Layout ? . EnableErrorLogger ;
59- var showToast = Layout ? . ShowErrorLoggerToast ;
58+ var enableErrorLogger = TabSet . EnableErrorLogger ;
59+ var showToast = TabSet . ShowErrorLoggerToast ;
6060 builder . AddAttribute ( 2 , nameof ( ErrorLogger . EnableErrorLogger ) , enableErrorLogger ) ;
6161 builder . AddAttribute ( 3 , nameof ( ErrorLogger . ShowToast ) , showToast ) ;
62+ builder . AddAttribute ( 4 , nameof ( ErrorLogger . ToastTitle ) , TabSet . ErrorLoggerToastTitle ) ;
6263 builder . CloseComponent ( ) ;
6364 } ;
6465
You can’t perform that action at this time.
0 commit comments