layout=fill in next/image 时可以得到宽度值吗?
Can I get width value when layout=fill in next/image?
<Image
alt="image_example"
src="/image_example.png"
layout="fill"
objectFit="none"
/>
<Test width={?} height={?}/>
我用 next/image 创建了一个简单的组件。
我想将此 img 的宽度和高度值传递给组件。
我可以从中获得价值吗?
您可以在图像加载后在 onLoad
回调中获取图像的 width
/height
值。
const CustomComponent = (props) => {
const [imgDimensions, setImgDimensions] = useState();
return (
<>
<Image
alt="image_example"
src="/image_example.png"
layout="fill"
objectFit="none"
onLoad={(e) => {
const { height, width } = e.target;
setImgDimensions({ width, height })
}}
/>
{imgDimensions && <Test width={imgDimensions.width} height={imgDimensions.height} />}
</>
);
};
<Image
alt="image_example"
src="/image_example.png"
layout="fill"
objectFit="none"
/>
<Test width={?} height={?}/>
我用 next/image 创建了一个简单的组件。
我想将此 img 的宽度和高度值传递给组件。
我可以从中获得价值吗?
您可以在图像加载后在 onLoad
回调中获取图像的 width
/height
值。
const CustomComponent = (props) => {
const [imgDimensions, setImgDimensions] = useState();
return (
<>
<Image
alt="image_example"
src="/image_example.png"
layout="fill"
objectFit="none"
onLoad={(e) => {
const { height, width } = e.target;
setImgDimensions({ width, height })
}}
/>
{imgDimensions && <Test width={imgDimensions.width} height={imgDimensions.height} />}
</>
);
};