引用过echart后的vue页面page1,page2后期改造成index轮播-会遇到的问题
需求说明:有两个展示页面page1,page2,都用到了一个公共组件map用来展示地图的组件。
后面改了需求,变成一个页面用轮播图的方式轮回播出page1和page2.
为了简化,改造用了ant框架自带的a-carousel
<a-carousel autoplay> <div> <index1></index1> 这里是之前的page1 </div> <div> <index2></index2> 这里是之前的page2 </div> <!-- <div><h3>如果有其他场景-这里用到其它frame</h3></div> --> </a-carousel>
出现了以下问题:
之前的功用组件hotmap不起左右,地图模块小时不见了
消失的原因:两个pageindex 共用组件hotmap。
那为什么之前没集成一个页面的时候会没事,因为之前路由跳转page2时page1 destroy,hotmap不会同时复用。
也就是有一个知识点:所有的echart 所依赖绘制的canvas的容器的id最好且必须拥有唯一的(同时引入一个页面时)
所以,只要改变以下共同引入的组件变成两个相同组件即可:
lunbo-index:
<a-carousel autoplay> <div> <index1></index1> </div> <div> <index2></index2> </div> <!-- <div><h3>3</h3></div> --> </a-carousel> import index1 from "./index.vue"; import index2 from "./index2.vue"; components:{ index1,index2 }
index1:
<!-- 地图 --> <div class="mapContain"> <hotmap></hotmap> </div> import hotmap from "../components/charts/hotmap4.vue"; components: { servecar, hotmap, ...
index2
<!-- 地图 --> <div class="mapContain"> <hotmap2></hotmap2> <!-- <iframe src="../static/index.html" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe> --> </div> import hotmap2 from "../components/charts/hotmap.vue"; components:{ caryunying,hotmap2,servertime ,unfinished,duohuanServer ...
这会就会出现了
另外扩展一个知识点:
走马灯自定义时间配置:
官网上没有说明此项配置:
添加属性:
autoplaySpeed
例如:
<a-carousel autoplay autoplaySpeed="15"> <div> <index1></index1> </div> <div> <index2></index2> </div> <!-- <div><h3>3</h3></div> --> </a-carousel>
即可调整
或者:
<div> <a-carousel autoplay :autoplaySpeed="autoplaySpeed"> <div> <index1></index1> </div> <div> <index2></index2> </div> <!-- <div><h3>3</h3></div> --> </a-carousel> </div> data() { return { autoplaySpeed:2000//2s } },
鼠标移上去会默认不轮播,鼠标移出继续轮播
另附上react版本:
<Carousel autoplay autoplaySpeed={8000} > // 需要的轮播代码 </Carousel>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!