defineProps做到子组件在不同页面显示不同图片

我还没看到有人将这个方法写具体。

动态绑定图片

如果我们找不到合适的组件icon,我们就会去找图片代替。当我们把一个头部做成组件时:

在子组件里面我们把右边图片设置为三个点,如何通过父子组件传递修改图片的渲染为蓝牙:

子组件

我们把图片放到编译器文件夹,然后在子组件script里面引入图片:

js 复制代码
import imgUrl from '../photo/sandian.png';

通过defineProps设定父组件传递的类型和子组件的默认值:

js 复制代码
defineProps({
    phone:{
        type: String,
        default: [imgUrl] //避免语法错误,default必须是常量
    
    }

})

再将phone动态绑定到页面:

html 复制代码
<img :src="phone" alt="" width="20px" height="20px">

就会把图片默认值渲染到页面。

父组件

同样需要引入图片地址

js 复制代码
import imgL from '../photo/lanya.png'
import NavBar from '../components/NavBar.vue';

在子组件标签里面将引入的图片地址传递给子组件就可以改变图片的渲染:

html 复制代码
<NavBar :phone="imgL"/>
相关推荐
苦夏木禾3 分钟前
js请求避免缓存的三种方式
开发语言·javascript·缓存
超级土豆粉11 分钟前
Turndown.js: 优雅地将 HTML 转换为 Markdown
开发语言·javascript·html
秃了也弱了。18 分钟前
Chrome谷歌浏览器插件ModHeader,修改请求头,开发神器
前端·chrome
乆夨(jiuze)38 分钟前
记录H5内嵌到flutter App的一个问题,引发后面使用fastClick,引发后面input输入框单击无效问题。。。
前端·javascript·vue.js
忧郁的蛋~1 小时前
HTML表格导出为Excel文件的实现方案
前端·html·excel
小彭努力中1 小时前
141.在 Vue 3 中使用 OpenLayers Link 交互:把地图中心点 / 缩放级别 / 旋转角度实时写进 URL,并同步解析显示
前端·javascript·vue.js·交互
然我1 小时前
别再只用 base64!HTML5 的 Blob 才是二进制处理的王者,面试常考
前端·面试·html
NanLing1 小时前
【纯前端推理】纯端侧 AI 对象检测:用浏览器就能跑的深度学习模型
前端
呆呆的心1 小时前
前端必学:从盒模型到定位,一篇搞定页面布局核心 🧩
前端·css
小飞悟1 小时前
前端高手才知道的秘密:Blob 居然这么强大!
前端·javascript·html