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>`
			}

}
相关推荐
哟哟耶耶2 小时前
React-04React组件状态(state),构造器初始化state以及数据读取,添加点击事件并更改state状态值
前端·javascript·react.js
kiramario2 小时前
用IconContext.Provider修改react-icons的icon样式
前端·javascript·react.js
destinyol2 小时前
React首页加载速度优化
前端·javascript·react.js·webpack·前端框架
程序员小续2 小时前
React 多个 HOC 嵌套太深,会带来哪些隐患?
java·前端·javascript·vue.js·python·react.js·webpack
大猫会长2 小时前
用AbortController取消事件绑定
前端
程序员小杰@3 小时前
AI前端组件库Ant DesIgn X
开发语言·前端·人工智能
致微3 小时前
Vue项目 bug 解决
前端·vue.js·bug
慕斯策划一场流浪4 小时前
fastGPT—nextjs—mongoose—团队管理之部门相关api接口实现
前端·javascript·html·fastgpt部门创建·fastgpt团队管理·fastgpt部门成员更新·fastgpt部门成员创建
我自纵横20235 小时前
事件处理程序
开发语言·前端·javascript·css·json·ecmascript
坊钰5 小时前
【MySQL 数据库】数据类型
java·开发语言·前端·数据库·学习·mysql·html