我创建了一个自己的基本组件,我希望所有基本组件都继承自该基本组件
public class BaseComponent : ComponentBase
{
// ...
}
页面组件:
@page "/apage"
@inherits BaseComponent
<CascadingValue Value="this">
<div>
<MyOtherComponent />
</div>
</CascadingValue>
在我想做的MyOtherComponent中:
[CascadingParameter]
public BaseComponent BaseComponent { get; set; }
直到这里所有作品。但是我想改进,我希望每个页面组件都应设为CascadingValue Value="this"
,因为从BaseComponent继承的每个页面都应为需要该引用的所有子组件提供BaseComponent引用。
所以页面组件应该像这样:
@page "/apage"
@inherits BaseComponent
<div>
<MyOtherComponent />
</div>
并且CascadingValue Value =“ this”的逻辑应移入BaseComponent。我该怎么办?
我不确定是否能得到您...如果将Apage组件公开为CascadingValue,如下所示:
@page "/apage"
@inherits BaseComponent
<CascadingValue Value="this">
<div>
<MyOtherComponent />
</div>
</CascadingValue>
然后,在MyOtherComponent中,您应该具有这样的CascadingParameter:
[CascadingParameter]
public Apage Apage{ get; set; }
不是
[CascadingParameter]
public BaseComponent BaseComponent { get; set; }
请请澄清一下,我会尽力回答我的问题...