海康视频WEB插件

引入相关依赖

index.html

html 复制代码
<script src="/video/web-control_1.2.5.min.js"></script>
<script src="/video/jquery-1.12.4.min.js" type="text/javascript"></script>
<script src="/video/jsencrypt.min.js" type="text/javascript"></script>

全局配置参数

javascript 复制代码
<script>
    window._CONFIG = {
        appKey:"XXXXXXXXX",
        secret:"XXXXXXXXXXXX",
        hikIp:'xxx.xxx.xxx.xx',
        apiPort:'XXXX',
};
</script>

页面

html 复制代码
<div class="backWidth play_box" ref="backWidth">
	<a-row type="flex" justify="space-around" align="middle">
		<a-spin v-show="spinFlag" tip="加载中请稍后......" />
	</a-row>
	<a-row class="play_box">
		<div id="playWnd" class="playWnd" ref="barparent"></div>
	</a-row>
</div>
javascript 复制代码
<script>
import {playMixin} from '@/utils/playMixinNew.js';
export default {
    mixins: [playMixin],
    data() {
        return {
            windowHeight: 0,
            curPlayMode:0,
        },
    mounted() {
        //计算窗口高度
        this.getWindowHeight();
        // 在窗口大小改变时重新获取窗口高度
        window.addEventListener('resize', this.getWindowHeight);
    },
    methods: {
        getWindowHeight() {
            this.windowHeight = window.innerHeight - 355;
        },
        // 切换实时视频和历史视频
        changePlay(value,playMode){
            if(playMode !== this.curPlayMode){
              this.closeWindow();
              setTimeout(()=>{
                this.openPlayer(value,playMode)
              },200)
            }
        },
        // 打开海康视频插件
        openPlayer(value,playMode=0){
            this.curPlayMode = playMode;
            this.$nextTick(()=>{
                this.initparam.layout = '1x1'
                this.spinFlag = true;
                this.initPlugin({playMode:this.curPlayMode});
                setTimeout(()=>{
                    if(this.curPlayMode){
                        console.log('进入视频回放')
                        this.startPlayBack(value)
                    }else{
                        console.log('进入视频预览')
                        this.startpreview(value);
                    }
                },2000)
            })
        },
    }
相关推荐
Mapmost6 分钟前
【高斯泼溅】如何将“歪头”的3DGS模型精准“钉”在地图上,杜绝后续误差?
前端
废春啊38 分钟前
前端工程化
运维·服务器·前端
爱上妖精的尾巴39 分钟前
6-9 WPS JS宏Map、 set、get、delete、clear()映射的添加、修改、删除
前端·wps·js宏·jsa
爱分享的鱼鱼1 小时前
对比理解 Vue 响应式 API:data(), ref、reactive、computed 与 watch 详解
前端·vue.js
JS_GGbond1 小时前
【性能优化】给Vue应用“瘦身”:让你的网页快如闪电的烹饪秘籍
前端·vue.js
T___T1 小时前
一个定时器,理清 JavaScript 里的 this
前端·javascript·面试
代码小学僧1 小时前
从 Arco Table 迁移到 VTable:VTable使用经验分享
前端·react.js·开源
微笑的曙光1 小时前
Vue3 环境搭建 5 步走(零基础友好)
前端
不知名用户来了1 小时前
基于vue3 封装的antdv/element-Plus 快速生成增删改查页面
前端
明川1 小时前
Android Gradle - ASM + AsmClassVisitorFactory插桩使用
android·前端·gradle