VUE3 笔记总结

server/2024/12/19 12:16:04/

最近自己搭了一个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>

http://www.ppmy.cn/server/151435.html

相关文章

网络安全—部署CA证书服务器

网络拓扑 两台服务器在同一网段即可&#xff0c;即能够互相ping通。 安装步骤 安装证书系统 首先我们对计算机名进行确认&#xff0c;安装了证书系统后我们是不能随意更改计算机名字的&#xff0c;因为以后颁发的证书都是和计算机也就是这一台的服务器名字有关。 修改完成后开…

构建一个rust生产应用读书笔记四(实战6)

本节我们开始使用tracing来记录日志&#xff0c;实际上在生产环境中&#xff0c;更推荐使用tracing作为日志记录的首先&#xff0c;它提供了更丰富的上下文信息和结构化日志记录功能。tracing 不仅可以记录日志信息&#xff0c;还可以跟踪函数调用、异步任务等&#xff0c;适用…

tauri2中创建新的窗口方式,和tauri1不一样了哦

看官方javascript的api文档&#xff1a;window | Tauri tauri中的rust文档&#xff1a;https://docs.rs/tauri/latest/tauri/index.html tauri.config.json定义文档&#xff1a;Configuration | Tauri tauri可用插件&#xff1a;tauri-apps repositories GitHub 在前端页…

timestamp 时间戳转换成日期的方法 | java.util

时间戳通常是一个long数据&#xff08;注意java中赋值时需要带上L标识是long整型&#xff0c;否则int过长报错&#xff09; 代码实现 常用工具类&#xff1a; java.util.Datejava.time.Instantjava.time.format.DateTimeFormatter toInstant() 方法的功能是将一个 Date 对象…

车载通信架构 --- 一个以太网帧包含多个DoIP帧?

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的…

什么是MyBatis

MyBatis 简介 MyBatis 是一个流行的 Java 持久层框架&#xff08;Persistence Framework&#xff09;&#xff0c;它主要用于简化数据库操作&#xff0c;提供了对数据库的映射支持&#xff0c;使得开发人员能够通过简单的配置和映射文件来执行数据库操作&#xff08;如增、删、…

AI工具如何深刻改变我们的工作与生活

在当今这个科技日新月异的时代&#xff0c;人工智能&#xff08;AI&#xff09;已经从科幻小说中的概念变成了我们日常生活中不可或缺的一部分。从智能家居到自动驾驶汽车&#xff0c;从医疗诊断到金融服务&#xff0c;AI正以惊人的速度重塑着我们的世界。 一、工作方式的革新…

【机器学习】机器学习的基本分类-强化学习-Deep Q-Network (DQN)

Deep Q-Network (DQN) 是 Q-Learning 的扩展版本&#xff0c;通过使用深度神经网络来逼近 Q 函数&#xff0c;解决了 Q-Learning 在高维状态空间上的适用性问题。DQN 是深度强化学习的里程碑之一&#xff0c;其突破性地在 Atari 游戏上表现出了超过人类玩家的水平。 DQN 的核心…