536 lines
10 KiB
Vue
536 lines
10 KiB
Vue
<template>
|
||
<!-- tosign页面 -->
|
||
<view>
|
||
<view class="tosign" style="">
|
||
<image class="images" src="../../static/image/login/login(2).png"></image>
|
||
<view class="backes"></view>
|
||
<!-- z自定义导航卡 -->
|
||
<u-navbar title="" class="content" :background="background" :is-back="false" :border-bottom="false">
|
||
<!-- <image src="../../static/image/tosign/tosigin(4).png"></image> -->
|
||
<image src="../../static/image/tosign/tosigin(1).png" @click="fanhui"></image>
|
||
</u-navbar>
|
||
|
||
<view id="content_tosign">
|
||
<u-form :model="form" ref="uForm">
|
||
<u-form-item label-position="right">
|
||
<u-input v-model="max" :placeholder="userinfo.role != 4 ? '优秀的标题可以卖的更好哦~' : '优秀的标题可以吸引更多人观看哦~'" />
|
||
</u-form-item>
|
||
<view class="values"><text>{{this.titleMaxLength - this.max.length}}</text>/20</view>
|
||
<u-form-item label-position="right">
|
||
<u-input v-model="form.text" placeholder="请填写直播简介" />
|
||
</u-form-item>
|
||
<view class="values"><text>{{20 - form.text.length}}</text>/20</view>
|
||
<u-form-item label-position="right" v-if="userinfo.role != 4">
|
||
<u-input :disabled="true" v-model="form.values" placeholder="我的售货袋" @click="navto('selectshop')"/>
|
||
<view class="rightes" @click="navto('selectshop')">售货袋</view>
|
||
</u-form-item>
|
||
</u-form>
|
||
<!-- 标签的引入 -->
|
||
<tap_tosign :fileListes="fileListes" @chuangjian="chuangjian" @qiehuan="qiehuan"></tap_tosign>
|
||
<view class="titles">直播封面图</view>
|
||
<u-upload ref="upload" :form-data="{'name':'article_cover'}" action='https://mall.dmygkeji.com/storeapi/Upload/uploadFile' name="article_cover" :header="{'Authorization' : 'Bearer' + ' ' + token}" :max-count="1" :show-progress="true" @on-change="tupian" @on-success="sccg" del-color="#ececec" upload-text="上传" del-bg-color="#fff" :before-upload="shangchuan"></u-upload>
|
||
</view>
|
||
<view class="button-uview">
|
||
<u-button :hair-line="false" @click="kaibo">{{relerest}}</u-button>
|
||
</view>
|
||
<u-toast ref="uToast" />
|
||
</view>
|
||
</view>
|
||
</template>
|
||
<script>
|
||
import tap_tosign from '@/components/release/tap_tosign.vue'
|
||
export default {
|
||
data() {
|
||
return {
|
||
list: [{
|
||
checked: false,
|
||
disabled: false
|
||
}],
|
||
background: {backgroundColor: 'none'},
|
||
form: {
|
||
name: '',
|
||
intro: '',
|
||
sex: '',
|
||
text:''
|
||
},
|
||
value: '',
|
||
max_two : '20',
|
||
max : '',
|
||
titleMaxLength : '20',
|
||
show: false,
|
||
relerest: '开始直播',
|
||
fileListes:[],
|
||
rSelect:[],
|
||
image:"",
|
||
token:"",
|
||
tiaozhuan:false,
|
||
userinfo:{}
|
||
};
|
||
},
|
||
methods: {
|
||
fanhui(){
|
||
this.$u.route({
|
||
type:"back",
|
||
delta:1
|
||
})
|
||
},
|
||
shangchuan(){
|
||
uni.showLoading({
|
||
title: '上传中',
|
||
mask:true
|
||
});
|
||
},
|
||
tupian(){
|
||
uni.hideLoading()
|
||
},
|
||
sccg() {},
|
||
// 选中某个复选框时,由checkbox时触发
|
||
checkboxChange(e) {
|
||
//console.log(e);
|
||
},
|
||
// 选中任一checkbox时,由checkbox-group触发
|
||
checkboxGroupChange(e) {
|
||
// console.log(e);
|
||
},
|
||
mask_u() {
|
||
|
||
},
|
||
// 获取验证码倒计时
|
||
getCode() {
|
||
this.loading()
|
||
},
|
||
loading() {
|
||
|
||
},
|
||
qiehuan(a){
|
||
// console.log(a)
|
||
this.rSelect = a
|
||
},
|
||
chuangjian(){
|
||
this.init()
|
||
},
|
||
tupian(a){
|
||
// console.log(JSON.parse(a.data));
|
||
let info = JSON.parse(a.data);
|
||
console.log(info);
|
||
// console.log(JSON.stringify(a.data))
|
||
if(info.errCode == 1){
|
||
this.$refs.uToast.show({
|
||
title: info.message,
|
||
type: 'error'
|
||
});
|
||
this.$refs.upload.clear()
|
||
return ;
|
||
|
||
}
|
||
this.image = info.data.file_name;
|
||
|
||
},
|
||
navto(url){
|
||
this.$u.route({
|
||
url:"/pages/release/" + url
|
||
})
|
||
},
|
||
kaibo(){
|
||
if(this.tiaozhuan){
|
||
return ;
|
||
}
|
||
this.tiaozhuan = true
|
||
console.log(this.image)
|
||
this.$u.api.createChatRoom({
|
||
chat_name:this.max,
|
||
live_desc:this.form.text,
|
||
spec:this.rSelect.join(","),
|
||
goods_id:uni.getStorageSync("gouwudai"),
|
||
cover_img:this.image
|
||
}).then((res)=>{
|
||
console.log(JSON.stringify(res))
|
||
if(res.errCode == 1){
|
||
this.$refs.uToast.show({
|
||
title: res.message,
|
||
type: 'error'
|
||
});
|
||
this.tiaozhuan = false
|
||
}
|
||
this.$u.route({
|
||
url:"/pages/release/zhibo",
|
||
type:"redirectTo",
|
||
params:{
|
||
url:res.data.url.replace("&","*"),
|
||
id:res.data.chat_id,
|
||
live_id: res.data.live_id
|
||
}
|
||
})
|
||
this.tiaozhuan = true
|
||
})
|
||
},
|
||
init(){
|
||
this.$u.api.getLiveSpec().then((res)=>{
|
||
console.log(res)
|
||
this.fileListes = res.data
|
||
})
|
||
|
||
}
|
||
},
|
||
components: {
|
||
tap_tosign,
|
||
},
|
||
watch:{
|
||
max(){
|
||
if (this.max.length > this.titleMaxLength) {
|
||
this.max = String(this.max).slice(0, this.titleMaxLength);
|
||
}
|
||
}
|
||
},
|
||
onLoad(){
|
||
this.init()
|
||
uni.removeStorageSync('gouwudai')
|
||
//
|
||
|
||
this.token = uni.getStorageSync('token');
|
||
this.userinfo = uni.getStorageSync("userinfo")
|
||
console.log(this.userinfo)
|
||
var config = {
|
||
appkey: 'mgb7ka1',
|
||
debug:true
|
||
};
|
||
|
||
}
|
||
};
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
#content_tosign {
|
||
width: 690rpx;
|
||
margin: 0 auto;
|
||
.values{
|
||
color: #fff;
|
||
text-align: right;
|
||
font-size: 24rpx;
|
||
margin-top: 14rpx;
|
||
}
|
||
.rightes{
|
||
color: #fff;
|
||
}
|
||
// 输入文字的颜色
|
||
.uni-input-input,.uni-input-input{
|
||
color: #fff!important;
|
||
}
|
||
}
|
||
|
||
u-upload {
|
||
border-radius: unset;
|
||
}
|
||
.u-input__input{
|
||
color: #fff!important;
|
||
}
|
||
.tosign {
|
||
.titles {
|
||
font-size: 30rpx;
|
||
font-weight: 400;
|
||
color: rgba(255, 255, 255, 1);
|
||
margin: 30rpx 0;
|
||
}
|
||
|
||
// background: url(../../static/pageA/tosignbackground.png) no-repeat!important;
|
||
.images {
|
||
position: fixed;
|
||
width: 100%;
|
||
height: 100%;
|
||
top: 0;
|
||
left: 0;
|
||
z-index: -1;
|
||
}
|
||
|
||
.backes {
|
||
background: rgba(0, 0, 0, 0.1);
|
||
position: fixed;
|
||
width: 100%;
|
||
height: 100%;
|
||
z-index: -1;
|
||
|
||
}
|
||
|
||
text {
|
||
z-index: 9;
|
||
color: #fff;
|
||
}
|
||
|
||
.more_tosign {
|
||
overflow: hidden;
|
||
zoom: 1;
|
||
width: 630rpx;
|
||
margin: 0 auto;
|
||
}
|
||
|
||
.more_tosign text {
|
||
display: inline-block;
|
||
width: 50%;
|
||
float: left;
|
||
font-size: 30rpx;
|
||
color: rgba(255, 255, 255, 1);
|
||
line-height: 36px;
|
||
margin: 97rpx 0;
|
||
}
|
||
|
||
.more_tosign .other {
|
||
text-align: right;
|
||
}
|
||
}
|
||
|
||
.title {
|
||
font-size: 36rpx;
|
||
font-weight: bold;
|
||
margin-bottom: 150rpx;
|
||
color: #fff;
|
||
letter-spacing: 3rpx;
|
||
}
|
||
|
||
.content {
|
||
width: 630rpx;
|
||
z-index: 99999;
|
||
margin: 0 auto;
|
||
padding-top: 14rpx;
|
||
|
||
.labales text {
|
||
font-size: 30rpx;
|
||
}
|
||
|
||
image:nth-child(1) {
|
||
width: 36rpx;
|
||
height: 35rpx;
|
||
position: absolute;
|
||
right: 48rpx;
|
||
}
|
||
|
||
// image:nth-child(2) {
|
||
// width: 36rpx;
|
||
// height: 35rpx;
|
||
// position: absolute;
|
||
// right: 48rpx;
|
||
// }
|
||
|
||
.labales {
|
||
border-bottom: 1px #fff solid;
|
||
margin-bottom: 180rpx;
|
||
height: 70rpx;
|
||
line-height: 70rpx;
|
||
position: relative;
|
||
|
||
input {
|
||
width: 80%;
|
||
margin-left: 60rpx;
|
||
color: #fff;
|
||
letter-spacing: 2rpx;
|
||
background-color: none;
|
||
}
|
||
}
|
||
|
||
.labales image {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
bottom: 0;
|
||
width: 39rpx;
|
||
height: 40rpx;
|
||
}
|
||
|
||
.labales:nth-child(3) {
|
||
position: relative;
|
||
margin-bottom: 60rpx;
|
||
}
|
||
|
||
.identifying {
|
||
position: absolute;
|
||
right: 0;
|
||
top: 0;
|
||
bottom: 0;
|
||
margin: auto;
|
||
font-size: 30rpx;
|
||
font-weight: 500;
|
||
color: rgba(255, 120, 15, 1);
|
||
line-height: 20px;
|
||
}
|
||
}
|
||
|
||
.uni-input-input,
|
||
.uni-input-placeholder {
|
||
letter-spacing: 2rpx;
|
||
}
|
||
|
||
.pact text {
|
||
font-size: 22rpx;
|
||
font-weight: 400;
|
||
color: rgba(255, 255, 255, 1);
|
||
line-height: 36px;
|
||
}
|
||
|
||
.pact_text {
|
||
font-size: 22px;
|
||
font-weight: 400;
|
||
color: rgba(129, 188, 253, 1) !important;
|
||
line-height: 36px;
|
||
}
|
||
|
||
//单选框的样式
|
||
.pact {
|
||
position: relative;
|
||
padding-left: 40rpx;
|
||
overflow: hidden; //超出的文本隐藏
|
||
text-overflow: ellipsis; //溢出用省略号显示
|
||
white-space: nowrap; //溢出不换行
|
||
}
|
||
|
||
.u-checkbox-group {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
bottom: 0;
|
||
margin: auto;
|
||
}
|
||
|
||
.u-checkbox__icon--square {
|
||
border-radius: 50rpx !important;
|
||
width: 22rpx;
|
||
height: 22rpx;
|
||
}
|
||
|
||
.u-btn {
|
||
width: 628rpx;
|
||
height: 98rpx;
|
||
background: rgba(255, 120, 15, 1) !important;
|
||
border-radius: 49rpx;
|
||
margin: 0 auto;
|
||
font-size: 36rpx;
|
||
color: rgba(255, 255, 255, 1) !important;
|
||
line-height: 36px;
|
||
border: 1px #ff780f solid;
|
||
outline: none;
|
||
border-color: rgba(255, 120, 15, 1) !important;
|
||
}
|
||
|
||
.warp {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
height: 100%;
|
||
}
|
||
|
||
.rect {
|
||
width: 558rpx;
|
||
height: 300rpx;
|
||
background-color: #fff;
|
||
border-radius: 20rpx;
|
||
overflow: hidden;
|
||
zoom: 1;
|
||
position: relative;
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
display: -webkit-flex;
|
||
|
||
/* Safari */
|
||
.rect_view {
|
||
width: 100rpx;
|
||
height: 100rpx;
|
||
|
||
.image {
|
||
width: 45rpx;
|
||
height: 53rpx;
|
||
display: inline-block;
|
||
|
||
}
|
||
|
||
flex:1;
|
||
margin-top: 77rpx;
|
||
}
|
||
|
||
.rect_view:nth-child(2) image {
|
||
width: 57rpx;
|
||
height: 45rpx;
|
||
}
|
||
|
||
.rect_butoon {
|
||
width: 100%;
|
||
position: absolute;
|
||
bottom: 0;
|
||
height: 85rpx;
|
||
text-align: center;
|
||
line-height: 85rpx;
|
||
border-top: 1px #999999 solid;
|
||
}
|
||
|
||
view {
|
||
color: #666;
|
||
font-size: 24rpx;
|
||
margin-top: 30rpx;
|
||
|
||
}
|
||
}
|
||
|
||
.rect_view:nth-child(1) image,
|
||
.rect_view:nth-child(1) view {
|
||
float: right;
|
||
}
|
||
|
||
.rect_view:nth-child(1) image {
|
||
margin-right: 20rpx;
|
||
}
|
||
|
||
.rect_view:nth-child(1) {
|
||
position: relative;
|
||
margin-right: 79rpx;
|
||
}
|
||
|
||
.rect_view:nth-child(1) view {
|
||
position: absolute;
|
||
bottom: 0;
|
||
right: 0;
|
||
}
|
||
|
||
.rect_view:nth-child(2) image,
|
||
.rect_view:nth-child(2) view {
|
||
float: left;
|
||
}
|
||
|
||
.rect_view:nth-child(2) image {
|
||
margin-left: 20rpx;
|
||
}
|
||
|
||
.rect_view:nth-child(2) {
|
||
position: relative;
|
||
}
|
||
|
||
.rect_view:nth-child(2) view {
|
||
position: absolute;
|
||
bottom: 0;
|
||
left: 0;
|
||
}
|
||
|
||
.title_top {
|
||
position: fixed;
|
||
top: 36rpx;
|
||
left: 0;
|
||
right: 0;
|
||
margin: auto;
|
||
font-size: 36rpx;
|
||
color: rgba(255, 255, 255, 1);
|
||
text-align: center;
|
||
width: 100%;
|
||
/* 如果您想让slot内容占满整个导航栏的宽度 */
|
||
/* flex: 1; */
|
||
/* 如果您想让slot内容与导航栏左右有空隙 */
|
||
/* padding: 0 30rpx; */
|
||
background: none;
|
||
letter-spacing: 4rpx;
|
||
}
|
||
|
||
.button-uview {
|
||
// position: fixed;
|
||
// bottom: 40rpx;
|
||
// left: 0;
|
||
// right: 0;
|
||
margin: 20rpx auto;
|
||
// z-index: 10;
|
||
}
|
||
</style>
|