Hi ccernat,
In the Blazor WASM, you should complete following steps after layout changing:
Configure<LeptonXThemeBlazorOptions>(options =>
{
options.Layout = LeptonXBlazorLayouts.TopMenu;
});
"AbpCli": {
"Bundle": {
"Mode": "BundleAndMinify", /* Options: None, Bundle, BundleAndMinify */
"Name": "global",
"Parameters": {
"LeptonXTheme.Layout": "top-menu"
}
}
}
abp bundle
commandThat might help: https://learn.microsoft.com/en-us/answers/questions/892666/azure-app-service-web-app-websockets-enabledisable.html
It says it failed to connect websockets. Did you allow websocket connections? Also, make sure Upgrade header is allowed and passed to the application by load-balance/proxy.
Once you set any feature for tenant, that is accepted and Edition features doesn't affect anymore.
So we decided to make a development for that experience.
https://github.com/abpframework/abp/issues/14470
We reproduced the issue. Currently leptonx.bunlde.js doesn't allow removing an item from generalsettings. It can't be initialized when a general setting item is removed.
We'll change this behavior and it'll be included in LeptonX 1.1
PageLayout feature might help in your situation. https://docs.abp.io/en/abp/latest/UI/Blazor/Page-Layout
PageLayout
[Inject]
public PageLayout PageLayout { get; set; }
MenuItemName
as "none" and set it back empty after page is disposed.protected async override Task OnInitializedAsync()
{
PageLayout.MenuItemName = "None";
}
protected override void Dispose(bool disposing)
{
PageLayout.MenuItemName = string.Empty;
base.Dispose(disposing);
}
Firstly, which Theme are you currently using? Lepton
, LeptonX
, Basic
Which version are you currently using? 6.0.0
, 5.3.5
etc.
Which UI type? Angular
, MVC
, Blazor Server
, Blazor Wasm
afterLeptonXInitialization
For afterLeptonXInitialization
issue, it seems the leptonx javascript bundle is old. afterLeptonXInitialization logic was included in LeptonX v1.0.0. Make sure your LeptonX dependencies are equal or above 1.0.0
in .csproj
and package.json
files.
Then run following command for MVC and Blazor-Server projects.
abp install-libs
If your project is Blazor WASM, try following one
abp bundle
AbpComponentBase
provides HandleErrorAsync()
method to handle exceptions in Blazor Server. It does everything for you, it writes logs, show modal etc.
You can use it like that:
try
{
// Your logic here.
throw new Exception("Test"); // Example exception.
}
catch (Exception ex)
{
await HandleErrorAsync(ex);
}
Also UserFriendlyException is handled:
try
{
// Your logic here.
throw new UserFriendlyException("This is a user friendly exception.");
}
catch (Exception ex)
{
await HandleErrorAsync(ex);
}
You can check this out for more information: https://docs.abp.io/en/abp/latest/UI/Blazor/Error-Handling?UI=BlazorServer#blazor-ui-error-handling
This is a Blazorise limitation. There is no event or async callback for selection change.
But you can still use your async operation with Task.Run()
as a workaround.
public partial class Index
{
private Guid selectedIndexItemId;
public Guid SelectedIndexItemId
{
get => selectedIndexItemId;
set {
selectedIndexItemId = value;
Task.Run(OnDropdownSelected); // 👈
}
}
public async Task OnDropdownSelected() // 👈
{
await Task.Delay(1000);
Logger.LogInformation("OnDropdownSelected!");
}
}