您的位置:首页 > 房产 > 建筑 > 上海网站seo公司_东莞企业营销型网站建设_广告投放网站_疫情最新动态

上海网站seo公司_东莞企业营销型网站建设_广告投放网站_疫情最新动态

2025/1/31 22:47:41 来源:https://blog.csdn.net/qq_38810813/article/details/144527763  浏览:    关键词:上海网站seo公司_东莞企业营销型网站建设_广告投放网站_疫情最新动态
上海网站seo公司_东莞企业营销型网站建设_广告投放网站_疫情最新动态

最近自己搭了一个vue3的项目 所以有一些之前都没有用过的方法 记录一下。

1、菜单图标的引入(和vue2引入的方法不太一样 之前一直是用的require v3无法这样使用)

const getAssetURL = (path:any) => {return new URL(`./assets/images/home/${path}.png`, import.meta.url).href;
}
</sc

2、页面布局是上下左右这样的布局 左边菜单的高度是整个铺满 右边的高度需要根据屏幕的大小来铺满 目前我想到的方法是计算左边section的高度 然后再减去部分高度(如果有更好的方法可以留言告诉我。)

onMounted(()=>{// 组件挂载后获取初始高度updateBoxHeight();// 监听浏览器窗口大小变化window.addEventListener('resize', updateBoxHeight);
})onUnmounted(() => {// 组件卸载前移除事件监听window.removeEventListener('resize', updateBoxHeight);
});const updateBoxHeight = () => {const rect = rightSection.value.offsetHeight;console.log(rect,'rect');webHeight.value = rect-70
}watch([route.path,webHeight],(newValue,oldValue) => {console.log(newValue,'newValue');getBreadcrumb();updateBoxHeight();
})

vue3 watch监听的方法和vue2也不一样 如果是监听多个事件 那么用数组定义就可以了 再把需要监听的事件放在里面即可。

const getBreadcrumb = () => {breadList.value = [];name.value = route.nameroute.matched.forEach(element => {if(element.children.length>0){breadList.value = element.children}});breadList.value = breadList.value.filter((e:any) => {return e.path != 'transaction'})
}

上面是监听的一个面包屑的事件

<a-breadcrumb><a-breadcrumb-item v-for="(item,index) in breadList" :key="item.name"><router-link :to="{path:item.path === ''?'/':item.path}">{{item.name}}</router-link></a-breadcrumb-item></a-breadcrumb>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com