整理原因:
在后台管理系统中,我们通常需要实现如果当前的用户没有设置头像,那么就显示默认头像,如果设置了头像,那么就使用用户设置的头像
因为这个功能在组件中的各个位置都有用到,所以可以使用自定义指令来实现
自定义指令的注册与使用
// 配置设置头像的自定义指令 相当于指令的第二个参数option 第一个参数是指令的名字
// 对dom进行底层操作,如果没有照片的时候就显示默认的照片
// import store from '@/store'
export const Avctar = {
// 第二个参数表示自定义指令接受的参数
// el 拿到的是当前的dom元素实例
// bing 表示绑定指令时接受的参数 bing.value
inserted: function (el, bing) {
// 监听dom元素也就是img标签的error事件,当没有照片
// 凡是需要加载网络资源的,如果当前资源加载不出来,就会触发onerror事件
// 满足条件,如果说当前没有照片的话,才进行执行
el.onerror = () => (el.src = bing.value)
},
}
使用方式
在main.js中
import { Avctar } from '@/directive'
Vue.directive('avatar', Avctar)
本文介绍如何在Vue后台管理系统中利用自定义指令实现用户头像的默认展示逻辑。当用户未设置头像时,显示默认头像;已设置则显示用户头像。通过监听img标签的error事件,确保在图片加载失败时能切换到默认头像。该功能以自定义指令的方式复用,提高代码的可维护性。
1037

被折叠的 条评论
为什么被折叠?



