Svelte och TypeScript: hur man lägger till eller utökar en bas-/standardkomponent såsom eller
I min Svelte-app försöker jag tillåta användare att ladda upp mappar utöver filer. Hittills är det enda sättet jag har hittat för att göra detta att använda en input-tagg med attributet type="file" och lägga till webkitdirectory-attributet, vilket tyvärr inte är standard. Sveltes input-typ har inte webkitdirectory. Koden fungerar men jag får TypeScript-felet "Property 'webkitdirectory' does not exist on type 'SvelteInputProps'". Är det möjligt att utöka standardtyperna i Svelte, så att jag kan använda en input-tagg som denna:
<input
type="file"
multiple
webkitdirectory <-- attribute not accepted
/>
Svar #1
Det är lite av en snabbfix, men jag använde setAttribute på följande sätt:
function setAttributeWebkitdirectory(node) {
node.setAttribute('webkitdirectory', '');
}
html :
<input
type="file"
use:setAttributeWebkitdirectory
/>
