整理一些自己用到的插件库

1,053 阅读4分钟

vite-vue2-template

gitlabcto.boe.com.cn/zhangkefei/…

工作中用到的开源组件

  1. cropperjs
    介绍:基于canvas的强大却又简单的图片裁剪工具  
    使用项目:电子名片小程序
    地址:github.com/fengyuanche… 
  2. vue-sketch-ruler
    介绍:一个vue实现的标尺插件(基于canvas,支持放大缩小,自定义比例等等)
    使用项目:城市应急指挥中心-场景编辑器
    地址:github.com/chuxiaoguo/… 
  3. fabric.js
    介绍:Fabric.js是一个可以简化canvas程序编写的库。 Fabric.js为canvas提供所缺少的对象模型, svg parser, 交互和一整套其他不可或缺的工具。
    使用项目:
    行业云GIS系统(2.5D图形编辑器)、城市应急指挥系统(场景编辑器)
    地址:fabricjs.com/

网页视频流播放器

www.liveqing.com/
流媒体服务器软件解决方案

jessibuca.monibuca.com/ 

特点:

Jessibuca是一款开源的纯H5直播流播放器,通过Emscripten将音视频解码库编译成Js(ams.js/wasm)运行于浏览器之中。兼容几乎所有浏览器,可以运行在PC、手机、微信中,无需额外安装插件。

特性

  • 支持解码H.264视频(Baseline, Main, High Profile全支持,支持解码B帧视频)
  • 支持解码H.265视频(flv id == 12)
  • 支持解码AAC音频(LC,HE,HEv2 Profile全支持)
  • 支持解码MP3音频以及Speex音频格式
  • 可设置播放缓冲区时长,可设置0缓冲极限低延迟(网络抖动会造成卡顿现象)
  • 支持智能不花屏丢帧,长时间播放绝不累积延迟。
  • 可创建多个播放实例
  • 程序精简,经CDN加速,GZIP压缩(实际下载500k),加载速度更快
  • 同时支持http-flv和websocket-flv协议以及websocket-raw私有协议(裸数据,传输量更小,需要搭配Monibuca服务器) 注:以http-flv请求时,存在跨域请求的问题,需要设置access-control-allow-origin, websocket-flv默认不存在此问题
  • 支持HTTPS/WSS加密视频传输,保证视频内容传输安全
  • 手机浏览器内打开视频不会变成全屏播放

Nunustudio

nunuStudio是一款支持 3D 以及 VR 应用的 three.js 框架,可以直接在浏览器上运行,不需要使用 WebGL 和 WebVR 等额外的插件。它提供了一个可视化的场景编辑器、代码编辑器、可视化工具来编辑纹理、材质、粒子发射器等等。

官网:www.nunustudio.org/

prism.js 语法着色库

Prism 是一个轻量级,可扩展的语法着色工具,符合 Web 标准。它压缩后只有 2KB,每种语言定义约增加300-500自己大小。非常易于使用,只需要插入一个 CSS 和 JS 文件即可。支持多种着色主题。 官网:prismjs.com/

WebUploader

大文件切片上传,GitHub地址github.com/fex-team/we… ,官网:fex.baidu.com/webuploader…

分片、并发

分片与并发结合,将一个大文件分割成多块,并发上传,极大地提高大文件的上传速度。 当网络问题导致传输错误时,只需要重传出错分片,而不是整个文件。另外分片传输能够更加实时的跟踪上传进度。

预览、压缩

支持常用图片格式jpg,jpeg,gif,bmp,png预览与压缩,节省网络数据传输。 解析jpeg中的meta信息,对于各种orientation做了正确的处理,同时压缩后上传保留图片的所有原始meta数据。

多途径添加文件

支持文件多选,类型过滤,拖拽(文件&文件夹),图片粘贴功能。 粘贴功能主要体现在当有图片数据在剪切板中时(截屏工具如QQ(Ctrl + ALT + A), 网页中右击图片点击复制),Ctrl + V便可添加此图片文件。

HTML5 & FLASH

兼容主流浏览器,接口一致,实现了两套运行时支持,用户无需关心内部用了什么内核。 同时Flash部分没有做任何UI相关的工作,方便不关心flash的用户扩展和自定义业务需求。

MD5秒传

当文件体积大、量比较多时,支持上传前做文件md5值验证,一致则可直接跳过。 如果服务端与前端统一修改算法,取段md5,可大大提升验证性能,耗时在20ms左右。

易扩展、可拆分

采用可拆分机制, 将各个功能独立成了小组件,可自由搭配。 采用AMD规范组织代码,清晰明了,方便高级玩家扩展。