interweave icon indicating copy to clipboard operation
interweave copied to clipboard

Warning: Expected server HTML to contain a matching <img> in <span>

Open kyds3k opened this issue 4 years ago • 4 comments

I'm getting this error when using Interweave to serve up an image:

<Interweave content={edition.homescreen.image} allowAttributes={true} />

console error:

Warning: Expected server HTML to contain a matching <img> in <span>. at img at Element (webpack-internal:///./node_modules/interweave/esm/index.js:45:30) at span at Element (webpack-internal:///./node_modules/interweave/esm/index.js:45:30) at Markup (webpack-internal:///./node_modules/interweave/esm/index.js:962:26) at Interweave (webpack-internal:///./node_modules/interweave/esm/index.js:998:26) at div at div at div at div at Homescreen (webpack-internal:///./pages/edition/[edition_id]/index.js:55:22) at Provider (webpack-internal:///./node_modules/next-auth/dist/client/index.js:584:24) at MyApp (webpack-internal:///./pages/_app.js:33:24) at ErrorBoundary (webpack-internal:///./node_modules/@next/react-dev-overlay/lib/internal/ErrorBoundary.js:26:47) at ReactDevOverlay (webpack-internal:///./node_modules/@next/react-dev-overlay/lib/internal/ReactDevOverlay.js:86:23) at Container (webpack-internal:///./node_modules/next/dist/client/index.js:160:5) at AppContainer (webpack-internal:///./node_modules/next/dist/client/index.js:648:24) at Root (webpack-internal:///./node_modules/next/dist/client/index.js:784:25)

The image is still served, just would like to get rid of that error!

kyds3k avatar Jul 03 '21 10:07 kyds3k

@kyds3k What's the actual HTML in content being parsed?

milesj avatar Jul 04 '21 22:07 milesj

I too have same error my entire html code is wrapped in span tag how do I fix it ??

dulquerirfan avatar Jan 29 '22 20:01 dulquerirfan

@dulquerirfan I need actual examples to debug.

milesj avatar Jan 30 '22 08:01 milesj

Next.js is using SSR by default, and thus requires the interweave tweak to work with. Just follow https://interweave.dev/docs/ssr , for my case I added the polyfill at the very top of _Document.ts

// Polyfill document for interweave
import { polyfill } from 'interweave-ssr'
polyfill()

// ... rest imports

cyrilchapon avatar Oct 25 '22 22:10 cyrilchapon