当前位置:首页 > uni-app

uniapp 图像显示

2026-02-05 23:55:27uni-app

图像显示方法

在UniApp中显示图像可以使用<image>组件,该组件支持本地图片和网络图片的显示。

<image src="/static/logo.png" mode="aspectFit"></image>

src属性指定图片路径,可以是相对路径、绝对路径或网络URL。mode属性控制图片的显示模式,常用值包括aspectFit(保持宽高比,完整显示图片)、aspectFill(保持宽高比,填充容器)和scaleToFill(拉伸填充)。

动态绑定图片路径

图片路径可以通过数据绑定动态设置。

uniapp 图像显示

<template>
  <image :src="imageUrl" mode="widthFix"></image>
</template>

<script>
export default {
  data() {
    return {
      imageUrl: 'https://example.com/image.jpg'
    }
  }
}
</script>

图片懒加载

对于长列表中的图片,可以使用lazy-load属性实现懒加载,提升页面性能。

<image 
  src="https://example.com/image.jpg" 
  lazy-load 
  mode="aspectFill"
></image>

图片预览功能

通过@click事件触发图片预览,调用uni.previewImageAPI。

uniapp 图像显示

<image 
  src="/static/photo.jpg" 
  mode="aspectFit" 
  @click="previewImage('/static/photo.jpg')"
></image>

<script>
export default {
  methods: {
    previewImage(url) {
      uni.previewImage({
        urls: [url],
        current: 0
      })
    }
  }
}
</script>

处理图片加载失败

通过@error事件捕获图片加载失败情况,显示占位图。

<image 
  :src="imageUrl" 
  mode="aspectFit" 
  @error="handleImageError"
></image>

<script>
export default {
  data() {
    return {
      imageUrl: 'https://example.com/image.jpg',
      placeholder: '/static/placeholder.png'
    }
  },
  methods: {
    handleImageError() {
      this.imageUrl = this.placeholder
    }
  }
}
</script>

图片裁剪与压缩

上传图片时可以使用uni.chooseImage配合uni.compressImage进行压缩处理。

uni.chooseImage({
  count: 1,
  success: (res) => {
    const tempFilePath = res.tempFilePaths[0]
    uni.compressImage({
      src: tempFilePath,
      quality: 80,
      success: (compressedRes) => {
        console.log(compressedRes.tempFilePath)
      }
    })
  }
})

注意事项

  • 网络图片需要配置域名白名单,在manifest.json中设置networkTimeoutsecureNetwork
  • 图片路径区分开发环境和生产环境,建议使用绝对路径
  • 大图片建议进行压缩处理,避免内存问题
  • 不同平台对图片格式的支持可能有差异,推荐使用JPEG或PNG格式

标签: 图像uniapp
分享给朋友:

相关文章

uniapp怎么使用

uniapp怎么使用

安装与开发环境搭建 下载HBuilderX作为开发工具,这是官方推荐的IDE,内置uniapp项目模板和调试工具。安装后通过新建项目选择uniapp模板,支持Vue.js语法。确保Node.js环境已…

uniapp旋转横屏

uniapp旋转横屏

实现横屏模式的方法 在UniApp中实现横屏模式,可以通过配置页面方向或使用CSS旋转实现。以下是两种常见方法: 修改manifest.json配置 在项目的manifest.json文件中,找到…

uniapp设置title

uniapp设置title

设置页面标题的方法 在UniApp中设置页面标题可以通过以下几种方式实现,适用于不同场景和需求。 通过pages.json配置 在pages.json文件中,可以为每个页面单独配置导航栏标题。找到对…

精通uniapp

精通uniapp

掌握UniApp的基础知识 UniApp是一个基于Vue.js的跨平台开发框架,支持一次开发多端部署(如H5、小程序、App等)。核心概念包括Vue语法、组件化开发、条件编译(针对不同平台适配)以及U…

uniapp 壁纸

uniapp 壁纸

使用 Uniapp 开发壁纸应用的方法 实现壁纸展示与切换功能 在 Uniapp 中,可通过 swiper 组件实现壁纸轮播展示。结合 image 组件加载本地或网络壁纸资源,动态绑定 src 属性实…

uniapp 气泡

uniapp 气泡

uniapp 气泡实现方法 在 uniapp 中实现气泡效果可以通过多种方式,以下是常见的几种方法: 使用 CSS 样式实现气泡 通过 CSS 的 border 和 ::after 伪元素可以创建…