@tagHelperPrefix
рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВBlazor v0.6.0 рдХреЗ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд░реЗрдЬрд░ @tagHelperPrefix
рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ
рдПрдХ рдореВрд▓ рдШрдЯрдХ рдХреЗ рд░реЗрдВрдбрд░рдлреНрд░реИрдЧрдореЗрдВрдЯ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдмрд╛рд▓ рдШрдЯрдХ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛, рдЬрд╣рд╛рдВ рдмрдЪреНрдЪреЗ рдФрд░ рд░реЗрдВрдбрд░рдлреНрд░реИрдЧрдореЗрдВрдЯ рджреЛрдиреЛрдВ рдХрд╛ рдирд╛рдо рдПрдХ рд╣реА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕рдВрдХрд▓рди рд╕рдордп рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ Panel.cshtml
рдореЗрдВ рдПрдХ рдШрдЯрдХ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
<div class="panel panel-default">
<div class="panel-heading">@PanelHeader</div>
<div class="panel-body">@PanelBody</div>
</div>
@functions{
[Parameter] private RenderFragment PanelHeader { get; set; }
[Parameter] private RenderFragment PanelBody { get; set; }
}
рдФрд░ рдЗрд╕ рддрд░рд╣ PanelHeader.cshtml
рдореЗрдВ рдПрдХ рдФрд░ рдШрдЯрдХ:
<div>@Title</div>
<div>@SubTitle</div>
@functions{
[Parameter] private string Title { get; set; }
[Parameter] private string SubTitle { get; set; }
}
рдлрд┐рд░ рдЗрди рджреЛрдиреЛрдВ рдШрдЯрдХреЛрдВ рдХреЛ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдХреА рддрд░рд╣ рдкреГрд╖реНрда рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдХрд▓рди рд╕рдордп рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА:
<Panel>
<PanelHeader>
<PanelHeader Title="some title" SubTitle="sub title"></PanelHeader>
</PanelHeader>
<PanelBody>Some content ...</PanelBody>
<Panel>
рдореИрдВ RenderFragments рд╕реЗ рдЕрд▓рдЧ рдШрдЯрдХреЛрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП @tagHelperPrefix
рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред
рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рддрдм рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рд╕реЗ рд▓рд┐рдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
Panel.cshtml
рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛:
<strong i="32">@tagHelperPrefix</strong> "pre1:"
<div class="panel panel-default">
<div class="panel-heading">@PanelHeader</div>
<div class="panel-body">@PanelBody</div>
</div>
@functions{
[Parameter] private RenderFragment PanelHeader { get; set; }
[Parameter] private RenderFragment PanelBody { get; set; }
}
рдФрд░ PanelHeader.cshtml
рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:
<strong i="37">@tagHelperPrefix</strong> "pre2:"
<div>@Title</div>
<div>@SubTitle</div>
@functions{
[Parameter] private string Title { get; set; }
[Parameter] private string SubTitle { get; set; }
}
рдФрд░ рдЕрдВрдд рдореЗрдВ рдмрдЪреНрдЪреЗ рдФрд░ рдорд╛рддрд╛-рдкрд┐рддрд╛ рджреЛрдиреЛрдВ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
<pre1:Panel>
<PanelHeader>
<pre2:PanelHeader Title="some title" SubTitle="sub title"></pre2:PanelHeader>
</PanelHeader>
<PanelBody>Some content ...</PanelBody>
<pre1:Panel>
рдЗрд╕ рд╕реБрдЭрд╛рд╡ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!
рд╣рдо @tagHelperPrefix
рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд░рд╛рджрд╛ рдШрдЯрдХреЛрдВ рдФрд░ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИред рд╡реЗ .NET рдкреНрд░рдХрд╛рд░ рдФрд░ рдЧреБрдгреЛрдВ рдХреЗ рд╕рдорд╛рди рдирд╛рдо рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдХреЛ рдирд╛рдо рд╕реНрдерд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ рдПрдХ рдШрдЯрдХ рдирд╛рдо рдХреЛ рдЕрд░реНрд╣рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЯрд╛рдЗрдк рдирд╛рдо рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмрд╕ рдирд╛рдо рд╕реНрдерд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВрдЧреЗ: <Namespace.MyComponent />
ред рдпрд╣ рдЕрднреА рддрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди https://github.com/aspnet/Blazor/issues/1315 рджреНрд╡рд╛рд░рд╛ рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдЖрдкрдХреЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рдЖрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИред рдпрд╣ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдФрд░ рдкреНрд░рдХрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рдЬреЛ рдареАрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдУрд╣, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рднреА рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╣реЛрдЧрд╛ред рд╢рд╛рдпрдж, рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдкрд░ рдЖрдк C # рдореЗрдВ using
рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдЬреИрд╕рд╛ рдХреБрдЫ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ
@fayezmm Yup, рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рд░реЗрдЬрд░ рдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреЗ рд▓рд┐рдП @using
рдирд┐рд░реНрджреЗрд╢ рд╣реИред