Merge pull request 'xbx' (#133) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/beelink/pulls/133
This commit is contained in:
commit
5fdd0c3fc6
@ -7,6 +7,15 @@
|
|||||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
||||||
<title><%= htmlWebpackPlugin.options.title %></title>
|
<title><%= htmlWebpackPlugin.options.title %></title>
|
||||||
|
<link href="http://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.css" rel="stylesheet">
|
||||||
|
<!-- 如需在IE8、9浏览器中初始化播放器,浏览器需支持Flash并在页面中引入 -->
|
||||||
|
<!--[if lt IE 9]>
|
||||||
|
<script src="//imgcache.qq.com/open/qcloud/video/tcplayer/ie8/videojs-ie8.js"></script>
|
||||||
|
<![endif]-->
|
||||||
|
<!-- 如果需要在 Chrome Firefox 等现代浏览器中通过H5播放hls,需要引入 hls.js -->
|
||||||
|
<script src="http://imgcache.qq.com/open/qcloud/video/tcplayer/lib/hls.min.0.8.8.js"></script>
|
||||||
|
<!-- 引入播放器 js 文件 -->
|
||||||
|
<script src="http://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
//designWidth:设计稿的实际宽度值,需要根据实际设置
|
//designWidth:设计稿的实际宽度值,需要根据实际设置
|
||||||
//maxWidth:制作稿的最大宽度值,需要根据实际设置
|
//maxWidth:制作稿的最大宽度值,需要根据实际设置
|
||||||
|
@ -12,28 +12,8 @@
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div id="root">
|
<div id="root">
|
||||||
<!-- 登录页面 -->
|
|
||||||
<div id="login-root">
|
|
||||||
<!-- 登录卡片 -->
|
|
||||||
<div id="login-card" class="card">
|
|
||||||
<!-- 顶部三个蓝条 -->
|
|
||||||
<div class="row-div" style="width: 100%; height: 10px">
|
|
||||||
<div style="width: 190px; height: 100%; background-color: #006EFF"></div>
|
|
||||||
<div style="width: 160px; height: 100%; background-color: #00A4FF"></div>
|
|
||||||
<div style="width: 100px; height: 100%; background-color: #5AD5E0"></div>
|
|
||||||
</div>
|
|
||||||
<!-- 腾讯云logo -->
|
|
||||||
<div class="row-div" style="width: 100%; height: 100px; justify-content: center">
|
|
||||||
<img style="height: 23px" src="./img/logo.png" alt="">
|
|
||||||
<div style="width: 9px"></div>
|
|
||||||
<div style="width: 1px; height: 10px; background-color: #D8D8D8"></div>
|
|
||||||
<div style="width: 9px"></div>
|
|
||||||
<div style="width: 86px; height: 23px; font-size: 18px; color: #333333">视频通话</div>
|
|
||||||
</div>
|
|
||||||
<!-- 用户名 房间号 登录按钮-->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 设备检测界面弹窗 -->
|
<!-- 设备检测界面弹窗 -->
|
||||||
<div id="device-testing-root" style="display: none;">
|
<div id="device-testing-root" style="display: none;">
|
||||||
<!-- 设备检测卡片 -->
|
<!-- 设备检测卡片 -->
|
||||||
@ -269,25 +249,20 @@
|
|||||||
<!-- 聊天室页面 -->
|
<!-- 聊天室页面 -->
|
||||||
<div id="room-root" class="col-div">
|
<div id="room-root" class="col-div">
|
||||||
<!-- header -->
|
<!-- header -->
|
||||||
<div class="row-div card" style="width: 100%; height: 65px; justify-content: space-between">
|
<div class="row-div card" style="width: 100%; height: 65px; justify-content: space-between;border-radius: 17px;">
|
||||||
<!-- 腾讯云logo -->
|
<!-- 腾讯云logo -->
|
||||||
<div class="row-div" style="height: 100%; width: 230px; justify-content: center">
|
<div class="row-div" style="height: 100%; width: 230px; justify-content: center">
|
||||||
<img style="height: 23px" src="./img/logo.png" alt="">
|
|
||||||
<div style="width: 9px"></div>
|
<div style="width: 86px; height: 23px; font-size: 18px; color: #333333">直播页面</div>
|
||||||
<div style="width: 1px; height: 10px; background-color: #D8D8D8"></div>
|
|
||||||
<div style="width: 9px"></div>
|
|
||||||
<div style="width: 86px; height: 23px; font-size: 18px; color: #333333">视频通话</div>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 分享屏幕 退出 按钮 -->
|
<!-- 分享屏幕 退出 按钮 -->
|
||||||
<div class="row-div" style="height: 100%; width: auto;">
|
<div class="row-div" style="height: 100%; width: auto;margin-right: 28px;">
|
||||||
<img id="screen-btn" style="width: 65px; height: 65px" src="./img/screen-off.png" alt="">
|
<img id="screen-btn" style="width: 45px; height: 45px" src="./img/screen-off.png" alt="">
|
||||||
<div style="width: 20px"></div>
|
<div style="width: 20px"></div>
|
||||||
<img id="logout-btn" style="width: 65px; height: 65px" src="./img/logout.png" alt="">
|
<img id="logout-btn" style="width: 45px; height: 45px" src="./img/logout.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<!-- 房间号 -->
|
|
||||||
<div id="header-roomId"
|
|
||||||
style="width: 230px; justify-content: flex-end; padding-right: 20px; font-size: 14px; color: #888888">
|
|
||||||
房间号: 12345</div>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- content -->
|
<!-- content -->
|
||||||
<div class="row-div" style="height: 100%; width: 100%; padding: 10px">
|
<div class="row-div" style="height: 100%; width: 100%; padding: 10px">
|
||||||
@ -310,17 +285,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 广告 -->
|
|
||||||
<div class="col-div" style="width: 100%; height: 244px">
|
|
||||||
<div style="width: 280px; height: 1px; background-color: #f0f0f0"></div>
|
|
||||||
<div class="row-div" style="width: 100%; height: 186px; justify-content: center">
|
|
||||||
<img style="height: 150px" src="./img/code.jpg" alt="">
|
|
||||||
<div style="width: 46px"></div>
|
|
||||||
<img style="height: 150px" src="./img/shot.png" alt="">
|
|
||||||
</div>
|
|
||||||
<div style="width: 290px; font-size: 14px; color: #888888">微信扫一扫打开小程序,点击“视频通话”即可加入通话
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 视频网格 -->
|
<!-- 视频网格 -->
|
||||||
|
@ -769,7 +769,8 @@ export async function putmember(data: any): Promise<any>{
|
|||||||
language: data.languageValue,
|
language: data.languageValue,
|
||||||
tlanguage: data.tlanguageValue,
|
tlanguage: data.tlanguageValue,
|
||||||
video: data.video,
|
video: data.video,
|
||||||
desc: data.desc
|
desc: data.desc,
|
||||||
|
videoid: data.videoid
|
||||||
}
|
}
|
||||||
console.log(newdata)
|
console.log(newdata)
|
||||||
const res = await put<Liveaddrule>(`member/${store.state.userinfo.memberid}`, newdata)
|
const res = await put<Liveaddrule>(`member/${store.state.userinfo.memberid}`, newdata)
|
||||||
|
@ -76,7 +76,8 @@
|
|||||||
.info{
|
.info{
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-top: 18px;
|
margin-top: 9px;
|
||||||
|
margin-bottom: 9px;
|
||||||
margin-left: 18px;
|
margin-left: 18px;
|
||||||
|
|
||||||
.datetime{
|
.datetime{
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="video">
|
<div class="video">
|
||||||
<video :controls="true" :src="info.livestatus == 0 ? info.fileurl : info.vodurl"></video>
|
<video :id=" 'a' + time" style="width:100%;height:100%"></video>
|
||||||
<div class="liveinfo">
|
<div class="liveinfo">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<div>
|
<div>
|
||||||
@ -38,11 +38,14 @@
|
|||||||
height: 563px;
|
height: 563px;
|
||||||
border-radius: 18px;
|
border-radius: 18px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
> video {
|
> video {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 505px;
|
height: 505px;
|
||||||
}
|
}
|
||||||
.liveinfo{
|
.liveinfo{
|
||||||
|
flex-shrink: 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
height: 58px;
|
height: 58px;
|
||||||
@ -87,7 +90,8 @@
|
|||||||
import { livestart } from '@/api';
|
import { livestart } from '@/api';
|
||||||
import router from '@/router';
|
import router from '@/router';
|
||||||
import { useI18n } from '@/utils/i18n';
|
import { useI18n } from '@/utils/i18n';
|
||||||
import { defineComponent, ref } from "vue";
|
import { defineComponent, onUpdated, ref } from "vue";
|
||||||
|
import { onBeforeRouteLeave } from 'vue-router';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props:{
|
props:{
|
||||||
@ -110,12 +114,30 @@ export default defineComponent({
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const time = ref(new Date().getTime())
|
||||||
|
let play: any;
|
||||||
|
onUpdated(()=>{
|
||||||
|
// console.log(props.url)
|
||||||
|
if(props.info){
|
||||||
|
play = window.TCPlayer('a' + time.value, {
|
||||||
|
fileID: (props.info.livestatus == 0 ? props.info.fileid : props.info.vodid),
|
||||||
|
appID: '1303872925'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
onBeforeRouteLeave((to, from, next) => {
|
||||||
|
console.log(121)
|
||||||
|
play.dispose()
|
||||||
|
next()
|
||||||
|
})
|
||||||
// const liveinfo = ref(props.liveinfo)
|
// const liveinfo = ref(props.liveinfo)
|
||||||
return {
|
return {
|
||||||
bianji,
|
bianji,
|
||||||
kaishi,
|
kaishi,
|
||||||
lan
|
lan,
|
||||||
|
time
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
@ -76,7 +76,8 @@
|
|||||||
.info{
|
.info{
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-top: 18px;
|
margin-top: 9px;
|
||||||
|
margin-bottom: 9px;
|
||||||
margin-left: 18px;
|
margin-left: 18px;
|
||||||
|
|
||||||
.datetime{
|
.datetime{
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="video">
|
<div class="video">
|
||||||
|
|
||||||
<video :src="url" :controls="true"></video>
|
<video style="width:100%; height:100%;" :id="'a' + url" ></video>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@ -19,7 +19,9 @@
|
|||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import router from '@/router';
|
||||||
|
import { defineComponent, onMounted, onUpdated } from 'vue';
|
||||||
|
import { onBeforeRouteLeave, useRouter } from 'vue-router';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
props:{
|
props:{
|
||||||
@ -27,8 +29,22 @@ export default defineComponent({
|
|||||||
type:String
|
type:String
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
setup(){
|
setup(props, ctx){
|
||||||
console.log(1)
|
console.log(1)
|
||||||
|
let play: any;
|
||||||
|
onUpdated(()=>{
|
||||||
|
console.log(props.url)
|
||||||
|
play = window.TCPlayer('a' + props.url, {
|
||||||
|
fileID: props.url,
|
||||||
|
appID: '1303872925'
|
||||||
|
});
|
||||||
|
})
|
||||||
|
onBeforeRouteLeave((to, from, next) => {
|
||||||
|
console.log(121)
|
||||||
|
play.dispose()
|
||||||
|
next()
|
||||||
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
4
src/import-png.d.ts
vendored
4
src/import-png.d.ts
vendored
@ -18,4 +18,6 @@ declare module 'tim-js-sdk'{
|
|||||||
export default value;
|
export default value;
|
||||||
}
|
}
|
||||||
|
|
||||||
declare var FB: any;
|
declare var FB: any;
|
||||||
|
|
||||||
|
declare var TCPlayer: any;
|
@ -45,6 +45,7 @@ export default createStore({
|
|||||||
uid: "",
|
uid: "",
|
||||||
updatedAt: "",
|
updatedAt: "",
|
||||||
video: "",
|
video: "",
|
||||||
|
videoid: 0,
|
||||||
willsay: [{name: "请选择", level: 0}],
|
willsay: [{name: "请选择", level: 0}],
|
||||||
willsayValue: [{name: "0", level: 0}],
|
willsayValue: [{name: "0", level: 0}],
|
||||||
zoneStr: "中途岛GMT-11:00",
|
zoneStr: "中途岛GMT-11:00",
|
||||||
|
@ -6,7 +6,7 @@ interface OnFunctio {
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface UploaderDone {
|
interface UploaderDone {
|
||||||
fileId: string;
|
fileId: number;
|
||||||
video: {
|
video: {
|
||||||
url: string;
|
url: string;
|
||||||
verify_content: string;
|
verify_content: string;
|
||||||
|
@ -932,6 +932,7 @@ export default defineComponent({
|
|||||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
uploadprogress.value = info.percent.toFixed(2) * 100;
|
||||||
});
|
});
|
||||||
userinfo.value.video = res.video.url;
|
userinfo.value.video = res.video.url;
|
||||||
|
userinfo.value.videoid = res.fileId;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (formData.value.video != "") {
|
if (formData.value.video != "") {
|
||||||
|
@ -257,7 +257,7 @@ export default defineComponent({
|
|||||||
const form = ref({
|
const form = ref({
|
||||||
title: "",
|
title: "",
|
||||||
img: "",
|
img: "",
|
||||||
fileid: "",
|
fileid: 0,
|
||||||
fileurl: "",
|
fileurl: "",
|
||||||
fileduration: 0,
|
fileduration: 0,
|
||||||
dateline: "",
|
dateline: "",
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="videoinfo">
|
<div class="videoinfo">
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<VideoPlay :url="result.fileurl"></VideoPlay>
|
<VideoPlay :url="result.fileid"></VideoPlay>
|
||||||
<VideoCont :videoid="result.videoid" :yuanyin="result.statusdesc" :date="result.createdAt" :watch="result.watch" :share="result.share" :status="result.status"></VideoCont>
|
<VideoCont :videoid="result.videoid" :yuanyin="result.statusdesc" :date="result.createdAt" :watch="result.watch" :share="result.share" :status="result.status"></VideoCont>
|
||||||
</div>
|
</div>
|
||||||
<VideoReview :videoinfo="result.score" class="review" v-if="result.status == 1"></VideoReview>
|
<VideoReview :videoinfo="result.score" class="review" v-if="result.status == 1"></VideoReview>
|
||||||
|
Loading…
Reference in New Issue
Block a user