微信小程序 图片自适应高度 宽度 完美适配原生或者uniapp

--

查了一下百度看到网上图片高度自适应的解决方案

基本是靠JS获取图片的宽度进行按比例计算得出图片高度。

不是很符合我的需求/

于是我脑瓜子一转 想到一种新的解决方案 不用JS计算也能完美解决。

我写了一个组件,直接导入可以使用。

1.新建一个组件bl-adaptation-img.vue

2.在main.js中导入

复制代码
// 自适应图片图片高度 宽度100%
import blAdaptationImg from '@/components/baseUI/bl-adaptation-img/index.vue'
Vue.component('bl-adaptation-img', blAdaptationImg);

3.编写组件代码

复制代码
/**
 * 微信公众号小程序商城系统!
 * Copyright © 2024 保留所有权利
 * =========================================================
 * 版本:V1
 * 授权主体:chenfeili
 * 授权域名:*****
 * 授权码:*******
 * ----------------------------------------------
 * 您只能在商业授权范围内使用,不可二次转售、分发、分享、传播
 * 未经授权任何企业和个人不得对代码以任何目的任何形式的再发布
 * =========================================================
 */


<template>
	<bctos-rich-text v-if="nodes" :nodes="nodes"></bctos-rich-text>
</template>

<script>
	export default {
		props: {
			imgURl: {
				type: String,
				default: ''
			}
		},
		data() {
			return {
				nodes: ''
			}
		},
		watch: {
			imgURl: {
				handler(val) {
					this.nodes = val ? `<img src="${val}" style="max-width:100%;height:auto;"/>` : ''
				},
				immediate: true,
				deep: true
			}
		}
	}
</script>

<style lang="scss" scoped>
</style>

目前使用的是uniapp的富文本组件bctos-rich-text 如果是原生的小程序可以使用 <rich-text></rich-text>

4.在页面文件中使用

复制代码
<view v-if="caateInfo.flow_img" class="mt-30 pl-30 pr-30">
	<bl-adaptation-img :imgURl="caateInfo.flow_img"></bl-adaptation-img>
</view>
相关推荐
AI_AGENT_DEV_AI8 小时前
原生 APP 开发的开发优点
uni-app
不吃辣49012 小时前
vibe coding | 如何做一个AI制图小程序?
人工智能·小程序·ai编程
laboratory agent开发12 小时前
2026小程序服务商推荐:全域私域数字化工具选型深度解析
小程序
小码哥06818 小时前
智慧物业管理系统开发详解:核心功能与源码开发优势
小程序·物业管理·物业系统
汤姆yu18 小时前
基于微信小程序的方言转文字小程序的设计与实现
java·小程序·毕业设计·方言翻译
不吃辣49019 小时前
vibe coding | 如何做一个 AI 闹钟小程序?
人工智能·小程序·ai编程
万岳科技程序员小金19 小时前
在线教育系统源码开发全解析:教育培训APP、小程序及平台搭建完整方案
小程序·在线教育系统源码·教育app开发·教育小程序开发
JackieDYH20 小时前
uniapp-通知滚动组件+轮播图组件封装-案例
uni-app·轮播图·通知
2501_915921431 天前
appuploader-cli 命令行上传 IPA 到 App Store Connect upload CI 集成
android·ci/cd·小程序·https·uni-app·iphone·webview
梦想的旅途22 天前
企业微信销售自动化:线索分配与超时预警
小程序·自动化·企业微信