当前位置:首页 > React

react如何渲染图片

2026-02-26 04:36:43React

渲染本地图片

将图片文件放入项目的publicsrc目录中,通过import或直接引用路径使用。

使用import方式(推荐):

import React from 'react';
import logo from './logo.png'; // 图片路径

function App() {
  return <img src={logo} alt="Logo" />;
}

使用public目录引用:

react如何渲染图片

function App() {
  return <img src="/images/logo.png" alt="Logo" />;
}

渲染网络图片

直接使用图片URL作为src属性:

function App() {
  return (
    <img 
      src="https://example.com/image.jpg" 
      alt="Example" 
    />
  );
}

动态渲染图片

根据条件或状态动态切换图片:

react如何渲染图片

function App() {
  const [imageUrl, setImageUrl] = React.useState('default.jpg');

  return (
    <div>
      <img src={imageUrl} alt="Dynamic" />
      <button onClick={() => setImageUrl('new-image.jpg')}>
        Change Image
      </button>
    </div>
  );
}

优化图片加载

使用loading="lazy"实现懒加载:

<img 
  src="large-image.jpg" 
  alt="Large" 
  loading="lazy" 
/>

添加备用srcSetsizes属性:

<img
  src="image-320w.jpg"
  srcSet="image-480w.jpg 480w, image-800w.jpg 800w"
  sizes="(max-width: 600px) 480px, 800px"
  alt="Responsive"
/>

处理加载错误

添加onError回调处理加载失败:

function App() {
  const handleError = (e) => {
    e.target.src = 'fallback.jpg';
  };

  return (
    <img 
      src="possibly-broken.jpg" 
      alt="Content" 
      onError={handleError}
    />
  );
}

标签: 图片react
分享给朋友:

相关文章

react moment如何使用

react moment如何使用

安装 react-moment 通过 npm 或 yarn 安装 react-moment: npm install react-moment 或 yarn add react-moment 基本…

如何降低react版本

如何降低react版本

降低 React 项目版本的步骤 检查当前 React 版本 运行以下命令查看项目中安装的 React 当前版本: npm list react 或 yarn list react 修改…

react 如何调试

react 如何调试

调试 React 应用的方法 使用 React Developer Tools 安装 Chrome 或 Firefox 的 React Developer Tools 扩展,可以检查组件树、状态和 p…

如何安装react

如何安装react

安装React的方法 方法一:使用Create React App(官方推荐) Create React App是官方提供的脚手架工具,适合快速搭建React项目。确保已安装Node.js(建议版本≥…

如何关闭react

如何关闭react

关闭React应用的步骤 在开发或运行React应用时,可能需要关闭正在运行的开发服务器或停止应用。以下是几种常见情况的处理方法: 停止开发服务器 如果正在使用npm start或yarn star…

vue实现图片预览

vue实现图片预览

实现图片预览功能 在Vue中实现图片预览功能可以通过多种方式完成,常见的有使用原生HTML5的<dialog>元素、第三方库如viewer.js或vue-photo-preview,以及自…