vue echarts tooltip使用动态模板

先上代码

javascript 复制代码
					  tooltip: {
						  // 这里是车辆icon
						  show: true,
						// trigger: "item",
						// backgroundColor: "transparent",
						appendToBody: true,
						textStyle: {
						color: "#ffffff" //设置文字颜色
						},
						formatter: (params) => {
							return formatHtml(params.data)
						},
					  },

然后mounted(){}

javascript 复制代码
mounted(){

			window.formatHtml = function(params){
				// 车辆弹窗
				const item = params.extraInfo.item;
			
				let carData = {};
				carData.stop_time = item.stopTime;
				carData.car_number = item.carNum;
				carData.vkey = item.vkey;
				carData.isConn = item.isConn == 1 ? '在线' : '离线';
				carData.ups = item.ups == 1 ? '电源正常' : '电源异常';
				carData.accStatus = item.accStatus == 1 ? '点火' : '熄火';
				carData.speed = item.speed + 'km/h';
				carData.dir = (item.dir);
				carData.live = '';
				// carData.car_token = car_token;
				carData.shareUrl = item.shareUrl ? item.shareUrl.replace("http://", "https://") : '';
				carData.userName = item.userName;
				carData.userPhone = item.userPhone;
				    return `
				    <div class='input-card content-window-card'>
				        <div class="showInfo">
				            <div class='input-item'>
				                <p>车牌号: ${carData.car_number}</p>
				                <p>联网状态: ${carData.isConn}</p>
				            </div>
				            <div class='input-item'>
				                <p>车辆状态: ${carData.accStatus}</p>
				                <p>电源状态: ${carData.ups}</p>
				            </div>
				            <div class='input-item'>
				                <p>行驶方向: ${carData.dir}</p>
				                <p>行驶速度: ${carData.speed}</p>
				            </div>
				            <div class='input-item'>
				                <p>车辆轨迹: <a href="javascript:void(0)" onclick="guiji('${carData.shareUrl}')"><img src="${require('@/assets/big_screen/icon/cheliangguiji.png')}"/></a></p>
				            </div>
				            <div class='input-item'>
				                <p>司机姓名: ${carData.userName}</p>
				                <p>联系方式: ${carData.userPhone}</p>
				            </div>            
				            <div class='input-item'>
				                ${carData.live ? "<p>车辆监控: <img id='monitor_car' data-deviceSerial='"+carData.live+"' src='" + require('@/assets/big_screen/icon/monitor.png') + "' />" + carData.live + "</p>" : ""}
				            </div>
				        </div>
				    </div>`
			}

}
相关推荐
小p2 分钟前
react学习3: 闭包陷阱
前端·react.js
该用户已不存在12 分钟前
Vibe Coding 入门指南:从想法到产品的完整路径
前端·人工智能·后端
Pedro16 分钟前
Flutter - 日志不再裸奔:pd_log 让打印有型、写盘有序
前端·flutter
申阳17 分钟前
Day 3:01. 基于Nuxt开发个人呢博客项目-初始化项目
前端·后端·程序员
三小河22 分钟前
解决 React + SSE 流式输出卡顿:Nginx 关键配置实战
前端·架构·前端框架
玖月晴空31 分钟前
Uniapp 速查文档
前端·微信小程序·uni-app
琉-璃33 分钟前
vue3+ts 任意组件间的通信 mitt的使用
前端·javascript·vue.js
FogLetter1 小时前
React Fiber 机制:让渲染变得“有礼貌”的魔法
前端·react.js
不想说话的麋鹿1 小时前
「项目前言」从配置程序员到动手造轮子:我用Vue3+NestJS复刻低代码平台的初衷
前端·程序员·全栈
JunpengHu1 小时前
esri-leaflet介绍
前端