mirror of
https://github.com/hanzoai/next.js.git
synced 2026-10-30 14:46:38 +00:00
Adds support for base64-encoded `placeholder`. Enables using placeholders without the "blur" effect. Fixes #47639 - [x] Add support for DataURL placeholder - [x] Add tests - [x] Update docs Co-authored-by: Steven <[email protected]>
31 lines
1.3 KiB
JavaScript
31 lines
1.3 KiB
JavaScript
import Image from 'next/image'
|
|
|
|
const shimmer = `data:image/svg+xml;base64,Cjxzdmcgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgPGRlZnM+CiAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImciPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzMzIiBvZmZzZXQ9IjIwJSIgLz4KICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzIyMiIgb2Zmc2V0PSI1MCUiIC8+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMzMiIG9mZnNldD0iNzAlIiAvPgogICAgPC9saW5lYXJHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIGZpbGw9IiMzMzMiIC8+CiAgPHJlY3QgaWQ9InIiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiBmaWxsPSJ1cmwoI2cpIiAvPgogIDxhbmltYXRlIHhsaW5rOmhyZWY9IiNyIiBhdHRyaWJ1dGVOYW1lPSJ4IiBmcm9tPSItMjAwIiB0bz0iMjAwIiBkdXI9IjFzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgIC8+Cjwvc3ZnPg==`
|
|
|
|
export default function Page() {
|
|
return (
|
|
<div>
|
|
<p>Data URL Placeholder</p>
|
|
|
|
<Image
|
|
priority
|
|
id="data-url-placeholder-raw"
|
|
src="/test.ico"
|
|
width="400"
|
|
height="400"
|
|
placeholder={shimmer}
|
|
/>
|
|
|
|
<div id="spacer" style={{ height: '1000vh' }} />
|
|
|
|
<Image
|
|
id="data-url-placeholder-with-lazy"
|
|
src="/test.bmp"
|
|
width="400"
|
|
height="400"
|
|
placeholder={shimmer}
|
|
/>
|
|
</div>
|
|
)
|
|
}
|