avoid 404 on icon for spa navigations with anchors
This commit is contained in:
		
							parent
							
								
									dd47be1bc6
								
							
						
					
					
						commit
						78f4cdbe10
					
				| @ -1,4 +1,4 @@ | ||||
| import { pathToRoot } from "../util/path" | ||||
| import { joinSegments, pathToRoot } from "../util/path" | ||||
| import { JSResourceToScriptElement } from "../util/resources" | ||||
| import { QuartzComponentConstructor, QuartzComponentProps } from "./types" | ||||
| 
 | ||||
| @ -8,7 +8,7 @@ export default (() => { | ||||
|     const description = fileData.description?.trim() ?? "No description provided" | ||||
|     const { css, js } = externalResources | ||||
|     const baseDir = pathToRoot(fileData.slug!) | ||||
|     const iconPath = baseDir + "/static/icon.png" | ||||
|     const iconPath = joinSegments(baseDir, "static/icon.png") | ||||
|     const ogImagePath = `https://${cfg.baseUrl}/static/og-image.png` | ||||
| 
 | ||||
|     return ( | ||||
|  | ||||
| @ -66,7 +66,6 @@ async function navigate(url: URL, isBack: boolean = false) { | ||||
| 
 | ||||
|   // scroll into place and add history
 | ||||
|   if (!isBack) { | ||||
|     history.pushState({}, "", url) | ||||
|     if (url.hash) { | ||||
|       const el = document.getElementById(url.hash.substring(1)) | ||||
|       el?.scrollIntoView() | ||||
| @ -81,6 +80,9 @@ async function navigate(url: URL, isBack: boolean = false) { | ||||
|   const elementsToAdd = html.head.querySelectorAll(":not([spa-preserve])") | ||||
|   elementsToAdd.forEach((el) => document.head.appendChild(el)) | ||||
| 
 | ||||
|   // delay setting the url until now
 | ||||
|   // at this point everything is loaded so changing the url should resolve to the correct addresses
 | ||||
|   history.pushState({}, "", url) | ||||
|   notifyNav(getFullSlug(window)) | ||||
|   delete announcer.dataset.persist | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user