几个月前,我们在EasyGBS的新版本中加入了设备定位功能,使用了百度地图循环渲染定位和点击定位的图片,在后端上实现了定位功能后,结果需要反馈到前端显示,即具体展现出设备的经纬度,我们将经纬度一栏放在了设备管理当中显示。
设备管理获取的列表分为经度和纬度,而后端获取的经纬度数据有两个,一个是GbsLatitude/GbsLongitude,一个是Latitude/Longitude,我们编辑需要采用GbsLatitude/GbsLongitude的经纬度数据,Latitude/Longitude数据暂不做使用。
我们在该功能中需要实现的效果是Latitude/Longitude经纬度数据为0的话,则优先展示GbsLatitude/GbsLongitude经纬度数据,并以该数据为准定位设备的具体位置。
解决方法是表格内使用templlate,进行三目运算判断,参考代码如下:
代码语言:javascript复制<el-table-column label="经度"
min-width="120">
<template slot-scope="props">
<div>
{{props.row.Longitude > 0 ? props.row.Longitude : props.row.GbsLongitude}}
</div>
</template>
</el-table-column>
<el-table-column label="纬度"
min-width="120">
<template slot-scope="props">
<div>
{{props.row.Latitude > 0 ? props.row.Latitude : props.row.GbsLatitude}}
</div>
</template>
</el-table-column>
此时我们可以看到GbsLatitude/GbsLongitude数据显示正常,最终效果就如我们本文开头显示正常了。