简介
@afsharnia/vessel-tracking-ui
是一款基于 Vue.js 的前端组件库,旨在为船舶追踪应用提供丰富的可视化和交互效果。
该组件库包含了多个组件,如船舶轨迹图表、船舶定位地图、船舶列表等,并且提供灵活的配置选项,方便集成到各种不同的应用场景中。
安装
可以通过 npm
进行安装:
npm install @afsharnia/vessel-tracking-ui
也可以通过 yarn
进行安装:
yarn add @afsharnia/vessel-tracking-ui
使用
引入组件库
在需要使用该组件库的页面或组件中,通过以下方式引入该组件库:
import VesselTrackingUI from '@afsharnia/vessel-tracking-ui' import '@afsharnia/vessel-tracking-ui/dist/styles.css' Vue.use(VesselTrackingUI)
注意: 该组件库依赖于 Vue.js 2.x 版本,请在项目中先安装 Vue.js 并且版本号要与组件库兼容。
使用组件
在页面或组件中使用该组件库提供的组件,比如船舶定位地图组件:
-- -------------------- ---- ------- ---------- ----- ------ ------ -------- -------- ----------- ------------------ -- ------ ----------- -------- ------ ------- - ---- -- - ------ - -------- - - --- -- ----- ------- --- ---- ------ ---- ----- -- - --- -- ----- ------- --- ---- ------ ---- ------ -- - --- -- ----- ------- --- ---- ------ ---- ------ - - - - - ---------
该代码示例中,我们使用了 vessel-map
组件,并且传入了一个 vessels
属性,该属性是一个数组,代表了需要在地图上展示的船舶列表。每个船舶对象包含 id
、name
、lat
和 lng
四个属性,其中 id
是必填项,其他三个属性可以根据需要自行设置。
各组件介绍
该组件库包含多个组件,下面对几个主要组件进行简单介绍。
vessel-map
该组件是一个基于 Leaflet.js 的船舶定位地图组件,可在地图上展示船舶的实时位置、运动轨迹等信息。同时,该组件也提供了多种地图样式和交互效果的配置选项,以方便适配不同的应用场景。
属性
vessels
: 船舶列表,包含每个船舶的位置信息、ID 和名称。showVesselLabel
: 是否显示船舶名称标签,默认值为true
。center
: 地图中心点坐标,格式为[lat, lng]
,默认值为[0, 0]
。zoom
: 地图缩放级别,范围为0~20
,默认值为8
。minZoom
: 地图最小缩放级别,范围为0~20
,默认值为2
。maxZoom
: 地图最大缩放级别,范围为0~20
,默认值为18
。attributionControl
: 地图是否显示版权信息,默认值为true
。zoomControl
: 地图是否显示缩放控制,默认值为true
。dragging
: 地图是否支持拖拽移动,默认值为true
。scrollWheelZoom
: 地图是否支持鼠标滚轮缩放,默认值为true
。doubleClickZoom
: 地图是否支持双击鼠标缩放,默认值为true
。boxZoom
: 地图是否支持框选缩放,默认值为true
。keyboard
: 地图是否支持键盘操作,默认值为true
。vesselIcon
: 船舶图标配置,包含以下属性:url
: 图标文件地址。width
: 图标宽度。height
: 图标高度。anchor
: 锚点位置,格式为[x, y]
,默认值为[0.5, 0.5]
。
trailColorMap
: 轨迹颜色映射表,是一个从船舶 ID 到颜色值的映射对象,用于给不同的船舶轨迹设置不同的颜色。默认值为一个空对象{}
。showTrail
: 是否显示船舶运动轨迹,默认值为true
。trailMinPoints
: 轨迹线最少点数,用于设置当船舶运动轨迹的点数少于该值时,不展示该船舶的轨迹线。默认值为2
。
注意: 船舶位置信息中,
lat
是纬度,lng
是经度,需要根据实际情况设置。
vessel-chart
该组件是一个船舶轨迹图表组件,可展示多艘船在同一时间范围内的轨迹数据,以及船舶的速度和方向等信息。
属性
vesselData
: 船舶数据,包含每个船舶的轨迹点数据、名称、ID。timeRange
: 时间范围,定义了需要展示的数据的时间周期。maxSpeed
: 最大速度,用于计算船舶的速度百分比,即当前速度除以该值得到的结果乘以 100 作为百分比值,在图表中进行展示。默认值为20
。
vessel-list
该组件是一个船舶列表组件,可展示多艘船舶的位置、速度和状态等信息。
属性
vessels
: 船舶列表,包含每个船舶的位置和速度等信息。showStatus
: 是否显示船舶的状态信息,默认值为true
。statusMap
: 状态图标映射表,是一个从状态值到图标地址的映射对象,用于根据不同的状态值展示对应的图标。默认值为一个空对象{}
。
示例代码
下面是一个包含了以上三个主要组件的完整示例,展示了如何使用 @afsharnia/vessel-tracking-ui
组件库来实现一个简单的船舶追踪应用。
-- -------------------- ---- ------- ---------- ----- ------ ------ -------- -------- ---- ------------ ---- ----------------- ----------- ------------------ -- ------ ---- ----------------- ------------- ------------------------ ---------------------- -- ------------ ------------------ -- ------ ------ ------ ----------- -------- ------ ------- - ---- -- - ------ - -------- - - --- -- ----- ------- --- ---- ------ ---- ------ ------ --- ------- -------- -- - --- -- ----- ------- --- ---- ------ ---- ------- ------ --- ------- --------- -- - --- -- ----- ------- --- ---- ------ ---- ------- ------ --- ------- ----- - -- ----------- - ---- - - ---- ----- ---- ---- ----- ----------- --------- -- - ---- ----- ---- ------ ----- ----------- --------- -- -- --- -- ---- - - ---- ----- ---- ------ ----- ----------- --------- -- - ---- ----- ---- ------ ----- ----------- --------- -- -- --- -- -- --- -- ---------- - ------ ----------- ---------- ---- ----------- --------- - - - - --------- ------- ---- - ------- ---- -- - --------- - ------------- ----- - --------
指导意义
本文介绍了 @afsharnia/vessel-tracking-ui
组件库的使用教程,通过该组件库,我们可以快速实现一个可视化、交互性强的船舶追踪应用,从而提高运输和物流等领域的效率和安全性。
同时,本文也给出了具体的代码示例和组件属性说明,通过学习和掌握这些内容,我们可以更好地理解和使用该组件库,同时也可以借鉴其中的思路和方法,应用到其他的前端开发工作中。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/116394