Skip to content

Commit 98f4423

Browse files
Change stringify implementation
1 parent 9cf3dcd commit 98f4423

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

EssentialCSharp.Web/Views/Shared/_Layout.cshtml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -283,19 +283,19 @@
283283
'toc-content' : item.level==0,
284284
'nested' : item.level>
285285
0,
286-
'current-section': currentPage.some(p => JSON.stringify(p.keys) == JSON.stringify(item.keys)),
286+
'current-section': currentPage.some(p => firstOrDefault(p.keys) == firstOrDefault(item.keys)),
287287
}" :href="item.href">{{item.title}}
288288
</summary>
289289
<ul>
290290
<li :class="{
291291
['indent-level-' + (item.level+1)]: true,
292292
'current-li' : currentPage.some(p=>
293-
JSON.stringify(p.keys) == JSON.stringify(item.keys)) && !currentPage.some(p => p.level > item.level),
293+
firstOrDefault(p.keys) == firstOrDefault(item.keys)) && !currentPage.some(p => p.level > item.level),
294294
}" >
295295
<a class="section-link" :class="{
296296
['indent-level-' + (item.level+1)]: true,
297297
'current-section' : currentPage.some(p=>
298-
JSON.stringify(p.keys) == JSON.stringify(item.keys)) && !currentPage.some(p => p.level > item.level),
298+
firstOrDefault(p.keys) == firstOrDefault(item.keys)) && !currentPage.some(p => p.level > item.level),
299299
}" :href="item.href"> Introduction
300300
</a>
301301
</li>
@@ -307,12 +307,12 @@
307307
<li v-else :class="{
308308
['indent-level-' + (item.level+1)]: true,
309309
'current-li' : currentPage.some(p=>
310-
JSON.stringify(p.keys) == JSON.stringify(item.keys)) && !currentPage.some(p => p.level > item.level),
310+
firstOrDefault(p.keys) == firstOrDefault(item.keys)) && !currentPage.some(p => p.level > item.level),
311311
}" >
312312
<a class="section-link" :class="{
313313
['indent-level-' + (item.level)]: true,
314314
'current-section' : currentPage.some(p=>
315-
JSON.stringify(p.keys) == JSON.stringify(item.keys)),
315+
firstOrDefault(p.keys) == firstOrDefault(item.keys)),
316316
}" :href="item.href"> {{item.title}}
317317
</a>
318318
</li>

EssentialCSharp.Web/wwwroot/js/site.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,13 @@ const app = createApp({
187187

188188
const sidebarShown = ref(false);
189189

190+
function firstOrDefault(list) {
191+
if (list.length > 0) {
192+
return list[0];
193+
}
194+
return null;
195+
}
196+
190197
const smallScreen = computed(() => {
191198
return (windowWidth.value || 0) < smallScreenSize;
192199
});

0 commit comments

Comments
 (0)