目的:在Vue3项目中使用海康
Web无插件开发包
,播放视频,需要配合nginx代理一起开发调试。
备注:详细功能请查看
Web无插件开发包
,本项目只作为如何在Vue3项目中正确使用该插件开发包的demo,所以只包含最简单的功能。
pnpm install
pnpm dev
pnpm build
<script src="/static/hikvision/jquery-1.12.1.min.js"></script>
<script src="/static/hikvision/jsPlugin-1.2.0.min.js"></script>
<script src="/static/hikvision/webVideoCtrl.js"></script>
<script src="/static/hikvision/encryption/AES.js"></script>
<script src="/static/hikvision/encryption/cryptico.min.js"></script>
<script src="/static/hikvision/encryption/crypto-3.1.2.min.js"></script>
<script src="/static/hikvision/playctrl/AudioRenderer.js"></script>
<script src="/static/hikvision/playctrl/SuperRender.js"></script>
export default defineConfig({
plugins: [vue()],
base: '/'
})
- 注意这一步,
divPlugin
元素要有具体的width和height - 这一步可以设置
width * height
的屏等其他配置选项
- 通过后端接口或已经配置好的
ip
,port
,username
,password
进行登录操作
const ipInfo = reactive({
ip: 'xx.xxx.xx.1xx', // 自行配置ip地址
port: 80, // 设置端口号
user: 'xxxx', // 设置用户
password: 'xxxxxx' // 设置密码
})
- 模拟通道
- 数字通道
- 零通道
- 可以设置一些渲染的配置
- isStreamType
- bZeroChannel
- 等
若存在手动切换页面的情况,需要在销毁页面前执行
停止预览
和登出
,否则会出现再次进入视频播放页面无法播放的情况,可能是已登录,后续动作就不在执行
onBeforeUnmount(() => {
videoStopPlay()
handleLogout()
})
还要注意一些UI组件和WEB无插件开发包的样式兼容性问题
Vue2和Vue3在public中引入静态资源会有些许不同注意区分
<!-- Vue 2 -->
<script src="./static/hikvision/jquery-1.12.1.min.js" ></script>
<script src="./static/hikvision/jsPlugin-1.2.0.min.js"></script>
<script src="./static/hikvision/webVideoCtrl.js"></script>
<script src="./static/hikvision/encryption/AES.js"></script>
<script src="./static/hikvision/encryption/cryptico.min.js"></script>
<script src="./static/hikvision/encryption/crypto-3.1.2.min.js"></script>
<script src="./static/hikvision/playctrl/AudioRenderer.js"></script>
<script src="./static/hikvision/playctrl/SuperRender.js"></script>
WEB无插件开发包的开发调试需要nginx的配合,最终效果也需要打包放到nginx环境下才能看出
WEB无插件开发包里面有许多别的用处的方法,可以根据业务需求进行添加和修改