Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.3K
Views
El tipo 'StaticImageData' no se puede asignar al tipo 'cadena'

Estoy luchando con las interfaces en mi pequeño proyecto de aprendizaje NextJS y TypeScript. Pensé que lo había solucionado, pero estoy lidiando con un problema en mi Header.tsx cuando se trata de mi prop src en mi componente Header . Sigo recibiendo los siguientes mensajes de error

El tipo 'StaticImageData' no se puede asignar al tipo 'cadena'. El tipo esperado proviene de la propiedad 'src' que se declara aquí en el tipo 'IntrinsicAttributes & ILogo & { children?: ReactNode; }'

Todavía no estoy completamente seguro de entender los accesorios de los niños y cómo hacer que fluyan de padre a hijo, lo que ha hecho que un error como este sea un poco frustrante.

Seguí adelante y publiqué el código del dedo del pie a continuación y agradezco las sugerencias para resolver el problema inmediato y las formas de mitigarlo en el futuro.

Encabezado.tsx

 import React from "react"; import Navbar from "./Navbar/Navbar"; import Logo from "../Logo"; import companyLogo from "../../../public/assets/images/logo.png"; import { ILogo } from "../../types/headerType"; const Header = () => { return ( <div className="container flex justify-between h-16 max-w-full bg-pink-400 h-100px"> <Logo className="object-cover" src={companyLogo} /> <Navbar /> </div> ); }; export default Header;

Logotipo.tsx

 import Image from "next/image"; import Link from "next/link"; import React, { FunctionComponent } from "react"; import { ILogo } from "../types/headerType"; const Logo: FunctionComponent<ILogo> = ({ src }) => { return ( <div> <Link href="/"> <a> <Image src={src} alt="Logo" className="object-cover cursor-pointer" height="100px" width="320px" layout="intrinsic" /> </a> </Link> </div> ); }; export default Logo;

headerType.ts

 export interface ILogo { // image: HTMLImageElement; src: string; className?: string; }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puedes imprimir en tu consola el resultado de importar tu imagen. Si obtiene algo como [object object], entonces debe solicitar la propiedad src específica en el objeto:

 <Logo className="object-cover" src={companyLogo.src} />
about 4 years ago · Juan Pablo Isaza Report

0

Está pasando una imagen estática local, por lo que debe agregarla al tipo, en lugar de

 export interface ILogo { // image: HTMLImageElement; src: string; className?: string; }

puedes tener esto

 export interface ILogo { // image: HTMLImageElement; src: string | StaticImageData; className?: string; }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!