У меня есть набор страниц, которые все следуют аналогичному шаблону /{report}/{id}, но где {report} заменяется конкретным именем для каждой страницы. . У нас также есть одноэлементный reportManager, который раньше обновлялся в OnParameterSet страницы
Код: Выделить всё
protected override async Task OnParametersSetAsync()
{
if (reportManager.SelectedId != id) {
reportManager.SelectedId = id;
}
var item = reportManager.SelectedItem;
}
Я пробовал создание компонента для переноса страниц, но поскольку это компонент на странице, его OnParameterSet запускается после страницы, поэтому при загрузке страницы reportManager.SelectedItem установлен неправильно.
Я также подумал о том, чтобы просто создать страницу для всех страниц:
Код: Выделить всё
@page "/{reportName}/{id}"
@switch reportName {
case "report1":
break;
case "report2":
break;
...
}
@ {
[Parameter]
public int Id { get; set; }
[Parameter]
public string ReportName { get; set; }
protected override async Task OnParametersSetAsync()
{
if (reportManager.SelectedId != id) {
reportManager.SelectedId = id;
}
var item = reportManager.SelectedItem;
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... te-pattern
Мобильная версия