|
@@ -2,9 +2,16 @@
|
|
|
<div class="WorldCup" :style="'font-size: ' + fontSize + 'px'">
|
|
|
<div class="up">
|
|
|
<img class="upbg" :src="require('../../assets/img/upbg.jpg')" />
|
|
|
- <video class="video" src=""></video>
|
|
|
+ <video controls class="video" src=""></video>
|
|
|
<img class="activityTitle" :src="require('../../assets/img/T.png')" />
|
|
|
- <div class="activity"></div>
|
|
|
+ <div class="activity">
|
|
|
+ <p>
|
|
|
+ 尽管曾经的比赛已成过眼云烟,但总有些经典瞬间无法忘却。那些年的世界杯名场面、那些与挚友一同熬夜看比赛的日子,那些因为足球而欣喜、落寞、激动、感伤的时刻,会永远铭记心中。
|
|
|
+ </p>
|
|
|
+ <p class="nextDuan">
|
|
|
+ 用户可在下方“我要投稿”上传自己与足球相关的视频,题材包含:足球技巧展示、喜爱的球队/球星、球衣收藏、印象深刻的比赛等各种足球、世界杯相关的视频,并点击“我的投稿”分享邀请好友助威。
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
<div class="btns">
|
|
|
<img
|
|
|
class="userInput"
|
|
@@ -13,7 +20,7 @@
|
|
|
/>
|
|
|
<img
|
|
|
class="userInput my"
|
|
|
- @click="() => toNewPage('./WorldCupDetail.html')"
|
|
|
+ @click="verification"
|
|
|
:src="require('../../assets/img/my.png')"
|
|
|
/>
|
|
|
</div>
|
|
@@ -23,24 +30,24 @@
|
|
|
<div class="title">模块标题</div>
|
|
|
<van-row gutter="18">
|
|
|
<van-col span="12">
|
|
|
- <video class="video" src=""></video>
|
|
|
+ <video controls class="video" src=""></video>
|
|
|
</van-col>
|
|
|
<van-col span="12">
|
|
|
- <video class="video" src=""></video>
|
|
|
+ <video controls class="video" src=""></video>
|
|
|
</van-col>
|
|
|
</van-row>
|
|
|
<van-row gutter="18">
|
|
|
<van-col span="12">
|
|
|
- <video class="video" src=""></video>
|
|
|
+ <video controls class="video" src=""></video>
|
|
|
</van-col>
|
|
|
<van-col span="12">
|
|
|
- <video class="video" src=""></video>
|
|
|
+ <video controls class="video" src=""></video>
|
|
|
</van-col>
|
|
|
</van-row>
|
|
|
</div>
|
|
|
<div class="vote">
|
|
|
<ranking />
|
|
|
- <chat />
|
|
|
+ <chat @toLogin="login" />
|
|
|
</div>
|
|
|
<match v-if="team.length" />
|
|
|
</div>
|
|
@@ -51,15 +58,10 @@ import { ref, provide, reactive } from "vue";
|
|
|
import chat from "./components/chat.vue";
|
|
|
import ranking from "./components/ranking.vue";
|
|
|
import match from "./components/match.vue";
|
|
|
+import { Dialog } from "vant";
|
|
|
|
|
|
import { getMatch } from "@/api/worldCup.js";
|
|
|
-// import { onMounted, reactive } from "vue";
|
|
|
-// import { isIpad, isIpod, isIphone } from "../../utils/isTerminal";
|
|
|
-/**
|
|
|
- * window.$originData.orginParames.title 页面标题
|
|
|
- * window.$originData.orginParames.parameters 固定参数值
|
|
|
- * window.$originData.urlParames url参数
|
|
|
- */
|
|
|
+
|
|
|
const availWidth =
|
|
|
window.$originData.orginParames.availWidth > 1440
|
|
|
? 1440
|
|
@@ -67,11 +69,28 @@ const availWidth =
|
|
|
const fontSize = ref(availWidth / 10);
|
|
|
const maxcol = [8, 4, 2, 1, 1, 1, 2, 4, 8];
|
|
|
let team = reactive([]);
|
|
|
-
|
|
|
+const shanshipin = window.$shanshipin || {};
|
|
|
+const from = reactive({
|
|
|
+ name: shanshipin.UserName || localStorage.getItem("worldCupName") || "",
|
|
|
+ phone: shanshipin.Phone || localStorage.getItem("worldCupPhone") || "",
|
|
|
+});
|
|
|
provide("fontSize", fontSize); // 配置全域参数
|
|
|
provide("availWidth", availWidth); // 配置全域参数
|
|
|
provide("maxcol", maxcol); // 配置全域参数
|
|
|
provide("team", team); // 配置全域参数
|
|
|
+provide("user", from); // 配置全域参数
|
|
|
+// import { onMounted, reactive } from "vue";
|
|
|
+// import { isIpad, isIpod, isIphone } from "../../utils/isTerminal";
|
|
|
+/**
|
|
|
+ * window.$originData.orginParames.title 页面标题
|
|
|
+ * window.$originData.orginParames.parameters 固定参数值
|
|
|
+ * window.$originData.urlParames url参数
|
|
|
+ */
|
|
|
+
|
|
|
+function setStorage() {
|
|
|
+ localStorage.setItem("worldCupPhone", from.phone || "");
|
|
|
+ localStorage.setItem("worldCupName", from.name || "");
|
|
|
+}
|
|
|
|
|
|
/**
|
|
|
* getMatch 获得赛事日程;
|
|
@@ -143,6 +162,40 @@ function setTeam(teamIndex, item) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+function login(next) {
|
|
|
+ Dialog.alert({
|
|
|
+ title: "",
|
|
|
+ messageAlign: "left",
|
|
|
+ theme: "round-button",
|
|
|
+ confirmButtonText: "登录",
|
|
|
+ message: () => (
|
|
|
+ <div>
|
|
|
+ <van-field
|
|
|
+ required
|
|
|
+ v-model={from.name}
|
|
|
+ label="姓名"
|
|
|
+ placeholder="请输入用户名"
|
|
|
+ />
|
|
|
+ <van-field
|
|
|
+ required
|
|
|
+ v-model={from.phone}
|
|
|
+ label="联系方式"
|
|
|
+ type="tel"
|
|
|
+ placeholder="请输入手机号"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ ),
|
|
|
+ }).then(() => {
|
|
|
+ setStorage();
|
|
|
+ next && next();
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+function verification() {
|
|
|
+ if (!from.phone) return login(() => toNewPage("./WorldCupDetail.html"));
|
|
|
+ toNewPage("./WorldCupDetail.html");
|
|
|
+}
|
|
|
+
|
|
|
function toNewPage(url) {
|
|
|
if (!url) return;
|
|
|
let U = url || "";
|
|
@@ -190,6 +243,20 @@ function toNewPage(url) {
|
|
|
background-size: 100% 100%;
|
|
|
margin: 17px 10px 19px 10px;
|
|
|
min-height: 315px;
|
|
|
+ color: #fff;
|
|
|
+ font-size: 14px;
|
|
|
+ font-weight: 400;
|
|
|
+ padding: 15px;
|
|
|
+ line-height: 1.8em;
|
|
|
+ p {
|
|
|
+ text-indent: 2em;
|
|
|
+ border: 1px solid #fbd204;
|
|
|
+ border-radius: 1em;
|
|
|
+ padding: 5px;
|
|
|
+ }
|
|
|
+ .nextDuan {
|
|
|
+ margin-top: 20px;
|
|
|
+ }
|
|
|
}
|
|
|
.btns {
|
|
|
display: flex;
|