Browse Source

Refactor TableOfContents partial to use TocHeadings model

Updated the TableOfContents partial to accept a List<TocHeading> instead of the full IndexModel, simplifying its interface. Adjusted the Index.cshtml to pass Model.TocHeadings directly. Removed the unused TableOfContents.cshtml.cs code-behind file.
pull/23666/head
Ahmet Çelik 9 months ago
parent
commit
19e514d650
  1. 2
      modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml
  2. 9
      modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/TableOfContents.cshtml
  3. 11
      modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/TableOfContents.cshtml.cs

2
modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml

@ -598,7 +598,7 @@
<div id="scroll-index" class="">
<nav id="toc" class="navbar index-scroll">
<partial name="TableOfContents" model="Model" />
<partial name="TableOfContents" model="Model.TocHeadings" />
</nav>
<div class="row">
<div class="col p-0">

9
modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/TableOfContents.cshtml

@ -1,17 +1,18 @@
@model Volo.Docs.Pages.Documents.Project.IndexModel
@using Volo.Docs.TableOfContents
@model List<TocHeading>
@{
if (Model.TocHeadings == null ||Model.TocHeadings.Count == 0)
if (Model == null || Model.Count == 0)
{
return;
}
var relevantHeadings = Model.TocHeadings
var relevantHeadings = Model
.Where(h => h.Level is 2 or 3)
.ToList();
if (relevantHeadings.Count == 0)
{
relevantHeadings = Model.TocHeadings
relevantHeadings = Model
.Where(h => h.Level == 1)
.ToList();
}

11
modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/TableOfContents.cshtml.cs

@ -1,11 +0,0 @@
using Volo.Abp.AspNetCore.Mvc.UI.RazorPages;
namespace Volo.Docs.Pages.Documents.Project;
public class TableOfContentsModel : AbpPageModel
{
public void OnGet()
{
}
}
Loading…
Cancel
Save