javascript - Hur man använder href i HTML span när man använder TSX-syntax?
Jag är ny på att använda Typescript och React, så ursäkta om detta är en nybörjarfråga. I min kod har jag följande rad:
<p><span href="#" id="nsTool" style={{color:"white", width: "50px"}}> Namespace </span></p>Detta fungerade ursprungligen bra när koden bara använde Javascript/React men när jag konverterade filen till en .tsx (Typescript), fick jag följande fel:
Type '{ children: string[]; href: string; id: string; style: { color: string; width: string; }; }' is not assignable to type 'DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>'.
Property 'href' does not exist on type 'DetailedHTMLProps<HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>'.
Betyder detta att jag inte kan använda href i span-elementet? Hur kan jag lösa detta?
Svar #1
HTML span-element tillåter endast globala attribut. Så href-attributet kommer inte att ha någon effekt på span och därför får du ett Typescript-fel.
Observera: href-attributet finns vanligtvis endast på ett ankarelement
Svar #2
<span>-taggen har ingen href-attribut. Du kan lägga till span-taggen med en ankartagg på detta sätt:
<span>
:
<a href="#">
Namespace
</a>
</span>
