npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ww-ui-vue

v0.0.24

Published

## 快速开始 ### 完整引入 ```typescript // main.ts

Downloads

91

Readme

Vue 3 + TypeScript + Vite

快速开始

完整引入

// main.ts

import { createApp } from 'vue'
import App from './App.vue'
import wwUi from "ww-ui-vue";
import "ww-ui-vue/lib/style.css"

createApp(App).use(wwUi).mount('#app')

按需导入

自动导入^推荐^

  • 首先你需要安装unplugin-vue-components这款插件
npm install -D unplugin-vue-components
  • 然后把下列代码插入到你的 Vite 或 Webpack 的配置文件中

Vite

// vite.config.ts
import { defineConfig } from 'vite'
import Components from 'unplugin-vue-components/vite'
import { WwUiResolver } from 'ww-ui-vue/resolver'

export default defineConfig({
    // ...
    plugins: [
        Components({
            resolvers: [WwUiResolver()],
        }),
    ],
})

Webpack

const Components = require('unplugin-vue-components/webpack').default
const { WwUiResolver } = require('ww-ui-vue/resolver')

module.exports = {
  // ...
  plugins: [
    Components({
      resolvers: [WwUiResolver()],
    }),
  ],
}

手动导入

App.vue

<template>
  <media-device-selector />
</template>
<script>
  import { MediaDeviceSelector } from 'ww-ui-vue'
  export default {
    components: { MediaDeviceSelector },
  }
</script>
// main.ts
import { createApp } from 'vue'
import App from './App.vue'
import "ww-ui-vue/lib/style.css"

createApp(App).mount('#app')

自定义组件

MediaDeviceSelector

电脑摄像头和麦克风设备选择组件,需要https

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------ | --------------------------- | ----------------- | --------- | | camera | 摄像头id v-model双向绑定 | string|undefined | undefined | | mic | 麦克风id v-model双向绑定 | string|undefined | undefined |

事件

| 事件名 | 说明 | 类型 | | ------ | -------------------- | ---------- | | change | 选中值发生变化时触发 | () => void |

AudioWave

音频画声纹图组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | --------------------------------------------------- | ------ | ------ | | fftSize | 样本数量 ,必须是从 32 到 32768 范围内的 2 的非零幂 | number | 512 |

方法

| 方法 | 说明 | 类型 | | ----------- | ------------------------- | ------------------------------------------------------------ | | start | 开始播放(audio/video标签) | (mediaElement: HTMLMediaElement, muted:boolean = true) => void | | streamStart | 开始播放(MediaStream) | (stream: MediaStream, muted: boolean = true) => void | | stop | 停止播放 | async () => void |

MapBase

地图底图组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | -------------------------------------- | ----------------- | ------ | | baseUrl | 发起http请求的基础url http://ip:port | string|undefined | | | token | 发起http请求token | string | |

事件

| 事件名 | 说明 | 类型 | | ---------------- | -------------- | -------------------------- | | onMapInitialized | 地图初始化完成 | (mapNode: MapNode) => void |

方法

| 方法 | 说明 | 类型 | | ------------------- | ------------------------------ | --------------------------- | | changeMapType | 修改地图底图类型 | (mapType: string) => string | | getMapLayerTypeList | 获取地图底图类型列表 | () => MapLayerType[] | | setMapDefaultCenter | 设置当前中心点和缩放级别为默认 | () => void | | getCurrentLayerType | 获取当前显示的底图类型 | ()=>string |

MapLayerGroups

地图图层多组组件

属性

| 属性名 | 说明 | 类型 | 默认值 | |---------|---------------|-----------------|-----------| | mapNode | 底图初始化完成后的节点 | MapNode | | | mqtt | 动态点位主题订阅的mqtt | Mqtt|undefined | undefined |

方法

| 方法 | 说明 | 类型 | |----------------|-------------|-----------------------------------------------| | selectByCircle | 获取在圈选圈内的数据 | (feature?: Feature) => LayerGroup[] | | findFeature | 获取Feature对象 | (id:string, model:string): Feature|undefined | | addFeature | 添加点位 | (layerData:LayerData, model:string): boolean |

MapLayerGroup

地图图层单组组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ---------- | ---------------------- | --------------- | --------- | | mapNode | 底图初始化完成后的节点 | MapNode | | | mqtt | 动态点位主题订阅的mqtt | Mqtt|undefined | undefined | | layerGroup | 图层组数据 | LayerGroup | |

方法

| 方法 | 说明 | 类型 | |----------------|-------------|-----------------------------------------------| | selectByCircle | 获取在圈选圈内的数据 | (feature?: Feature) => LayerGroup | | findFeature | 获取Feature对象 | (id:string, model:string): Feature|undefined | | addFeature | 添加点位 | (layerData:LayerData, model:string): boolean |

MapModelLayer

地图图层组件

属性

| 属性名 | 说明 | 类型 | 默认值 | |-----------|---------------|-----------------|-----------| | mapNode | 底图初始化完成后的节点 | MapNode | | | mqtt | 动态点位主题订阅的mqtt | Mqtt|undefined | undefined | | layerInfo | 图层数据 | LayerInfo | | | show | 图标是否显示 | boolean | true |

方法

| 方法 | 说明 | 类型 | |----------------|-------------|-----------------------------------------------| | selectByCircle | 获取在圈选圈内的数据 | (feature?: Feature) => LayerInfo | | setVisible | 设置图层是否显示 | (visible: boolean) => void | | findFeature | 获取Feature对象 | (id:string, model:string): Feature|undefined | | addFeature | 添加点位 | (layerData:LayerData, model:string): boolean |

插槽

| 插槽名 | 说明 | 类型 | |---------|---------|----| | default | 自定义菜单内容 | |

MapPopup

地图鼠标移上显示名称(通过标签实现显示名称,可通过插槽自定义)、点击弹窗组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | ---------------------- | ------- | ------ | | mapNode | 底图初始化完成后的节点 | MapNode | |

事件

| 事件名 | 说明 | 类型 | | ------------ | -------- | ------------------------ | | onClose | 关闭弹窗 | () => void | | onOpen | 打开弹窗 | () => void | | onAudioCall | 语音呼叫 | (called: string) => void | | onVideoCall | 视频呼叫 | (called: string) => void | | onQueryTrack | 轨迹查询 | (code: string) => void |

方法

| 方法 | 说明 | 类型 | |------------|------|---------------------------------------------------------------------| | closePopup | 关闭弹窗 | () => void | | openPopup | 打开弹窗 | (feature: Feature, zoom:number = 15, duration:number = 500) => void |

插槽

| 插槽名 | 说明 | 类型 | | ------- | ------------------------ |--------------------------------------------------------------| | default | 自定义弹窗内容 | {title:string,data:LayerPointDetails,model:string,id:string} | | title | 自定义鼠标移上去显示内容 | title:string |

MapPopupWithTitle

地图鼠标移上显示名称(通过地图样式实现显示名称)、点击弹窗组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | ---------------------- | ------- | ------ | | mapNode | 底图初始化完成后的节点 | MapNode | |

事件

| 事件名 | 说明 | 类型 | |--------------|------|--------------------------| | onClose | 关闭弹窗 | () => void | | onOpen | 打开弹窗 | () => void | | onAudioCall | 语音呼叫 | (called: string) => void | | onVideoCall | 视频呼叫 | (called: string) => void | | onQueryTrack | 轨迹查询 | (code: string) => void |

方法

| 方法 | 说明 | 类型 | |------------|------|---------------------------------------------------| | closePopup | 关闭弹窗 | () => void | | openPopup | 打开弹窗 | (feature: Feature, zoom:number = 15, duration:number = 500) => void |

插槽

| 插槽名 | 说明 | 类型 | |---------|---------|-----------------------------------------------------| | default | 自定义弹窗内容 | {title:string,data:LayerPointDetails,model:string,id:string} |

MapPopupCommon

地图弹窗内容通用组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ---------- | ---------------------- | ------------------- | ------ | | mapNode | 底图初始化完成后的节点 | MapNode | | | popupTitle | 显示标题 | string | | | popupData | 显示字段列表 | LayerPointDetails[] | |

事件

| 事件名 | 说明 | 类型 | | ----------- | -------- | ------------------------ | | onClose | 关闭弹窗 | () => void | | onAudioCall | 语音呼叫 | (called: string) => void | | onVideoCall | 视频呼叫 | (called: string) => void |

方法

| 方法 | 说明 | 类型 | | ----- | ---- | ---------- | | close | 关闭 | () => void |

插槽

| 插槽名 | 说明 | 类型 | | ------- | ------------------ | ---- | | content | 自定义弹窗里的内容 | |

MapDraw

地图画图组件(点、线、多边形绘制/修改/删除)

属性

| 属性名 | 说明 | 类型 | 默认值 | |---------|-------------|---------|-----| | mapNode | 底图初始化完成后的节点 | MapNode | | | style | 画图样式 | Style | |

方法

| 方法 | 说明 | 类型 | |-------------|--------------|----------------------------------------------------------------------------------------------------------------------------------| | startDraw | 画图 | (type: DrawType) => Promise | | startModify | 修改 | (modifyEnd?: (feature: Feature) => void, conditionFeature?: Feature) => void | | startDelete | 删除 | () => Promise | | autoDraw | 通过点位画图 | (type: import("../base/constants").DrawType, coordinates: number[]|number[][] |number[][][], radius?: number) => Promise | | addFeature | 添加自定义feature | (feature: Feature) => void | | done | 取消/完成 | () => void |

MapDrawMeasure

地图计算组件(距离,面积)

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | ---------------------- | ------- | ------ | | mapNode | 底图初始化完成后的节点 | MapNode | |

方法

| 方法 | 说明 | 类型 | | ------------ | --------- | ---------------------------------- | | startMeasure | 开始计算 | (measureType: MeasureType) => void | | done | 取消/完成 | () => void |

MapDrawTrack

地图画轨迹组件

属性

| 属性名 | 说明 | 类型 | 默认值 | | ------- | ---------------------- | ------- | ------ | | mapNode | 底图初始化完成后的节点 | MapNode | |

方法

| 方法 | 说明 | 类型 | | ------------------- | ------------------ | --------------------------------- | | drawTracePoint | 通过点对象画轨迹 | (trackPoints: GisPoint[]) => void | | drawTraceCoordinate | 通过坐标数组画轨迹 | (coordinates: number[][]) => void | | clear | 清空 | () => void |

MapDrawingTool

地图标注工具组件(图层设置点、线、多边形经纬度时使用)

属性

| 属性名 | 说明 | 类型 | 默认值 | |-------------|--------------------------------------------|--------------------------------------------------|-------| | baseUrl | 发起http请求的基础url http://ip:port | string|undefined | | | token | 发起http请求token | string | | | type | 画图类型 | 'Point' | 'LineString' | 'Polygon' | 'Circle' | Point | | style | 画图样式 | Style | | | coordinates | 坐标数组 点是1维数组,线是2维数组,多边形是3维数组 v-model双向绑定 | number[]|number[][]|number[][][]|undefined | | | radius | 圆半径 v-model双向绑定 | number|undefined | |

工具

  • Mqtt 对mqtt的封装
  • HttpRequest 对axios的封装
  • MapDrawing 对地图画图的封装,MapDraw组件在此基础上封装成组件
  • setGifPointStyle 方法 对feature点设置gif图片样式
  • eventGifIcon 告警事件Gif图片