liyongli 2 年之前
父節點
當前提交
d776321037
共有 5 個文件被更改,包括 29 次插入50 次删除
  1. 1 1
      package.json
  2. 3 4
      src/components/titleStyle.jsx
  3. 1 1
      src/index.jsx
  4. 3 3
      src/pages/Fourth.jsx
  5. 21 41
      src/pages/bigScreen/Home.jsx

+ 1 - 1
package.json

@@ -3,7 +3,7 @@
   "version": "0.0.0",
   "description": "",
   "scripts": {
-    "dev": "vite --open",
+    "dev": "vite --host",
     "build": "vite build",
     "serve": "vite preview"
   },

+ 3 - 4
src/components/titleStyle.jsx

@@ -6,12 +6,11 @@ import "./titleStyle.css"
 
 const [timeDate, settimeDate] = createSignal(utils.getTime())
 let lastTime = Date.now();
-let animationID = -1;
 
 function animation() {
-    animationID = window.requestAnimFrame(() => {
+    window.animationID = window.requestAnimFrame(() => {
         const nowTime = Date.now();
-        window.cancelrequestAnimFrame(animationID);
+        window.cancelrequestAnimFrame(window.animationID);
         animation()
         if ((nowTime - lastTime) < 60000) return
         lastTime = nowTime;
@@ -24,7 +23,7 @@ function titleStyle() {
         animation()
     })
     onCleanup(()=>{
-        animationID >= 0 && window.cancelrequestAnimFrame(animationID);
+        window.animationID >= 0 && window.cancelrequestAnimFrame(window.animationID);
     })
     return <div class="headTitle">
         <div class="title">

+ 1 - 1
src/index.jsx

@@ -7,7 +7,7 @@ import utils from "./utils/index"
 import "./assets/style/layout.css"
 import "./assets/style/base.css"
 
-window.onresize = function (e) {
+window.onresize = function () {
     utils.screenSize()
 }
 

+ 3 - 3
src/pages/Fourth.jsx

@@ -12,14 +12,14 @@ import "../assets/style/Fourth.css"
 
 let WordEle, WordCanvas;
 let lastTime = Date.now();
-let animationID = -1;
+window.animationID = -1;
 const [timeDate, setTimeDate] = createSignal(utils.getTime())
 const [itemHeight, setItemHeight] = createSignal(utils.getTime())
 
 function animation() {
-  animationID = window.requestAnimFrame(() => {
+    window.animationID = window.requestAnimFrame(() => {
     const nowTime = Date.now();
-    window.cancelrequestAnimFrame(animationID);
+    window.cancelrequestAnimFrame(window.animationID);
     animation()
     if ((nowTime - lastTime) < 1000) return
     lastTime = nowTime;

+ 21 - 41
src/pages/bigScreen/Home.jsx

@@ -1,25 +1,22 @@
-import { onMount, createSignal, createEffect, Show, For } from "solid-js";
+import { onMount, createSignal, Show, For } from "solid-js";
 import { createStore } from "solid-js/store";
 import dayjs from "dayjs"
 
 import utils from "../../utils/index"
 
 import "../../assets/style/BigScreenHome.css";
-import { getData } from "../../api/bigScreen"
 
 import Usertrend from "./components/Usertrend";
 import SelfPlatform from "./components/SelfPlatform";
 import Column from "./components/Column_g2";
-// import Column from "./components/Column";
 import ListeningRate from "./components/ListeningRate_g2";
-// import ListeningRate from "./components/ListeningRate";
 import Activity from "./components/Activity";
 import Map from "./components/Map-l7";
 // import Map from "./components/Map";
 import NewMedia from "./components/NewMedia";
 import NewMediaTrend from "./components/NewMediaTrend"
 
-import { getWeather } from "../../api/bigScreen"
+import { getWeather, getData } from "../../api/bigScreen"
 const [TimeDate, setTimeDate] = createSignal("");
 const [eHeight, seteHeight] = createSignal(0);
 const [Weather, setWeather] = createSignal("请稍候...");
@@ -28,20 +25,6 @@ const [Geography] = createSignal({
     longitude: -190
 })
 
-let time = undefined;
-
-function dingshi() {
-    return setTimeout(() => {
-        time && clearTimeout(time);
-        const timeFormmat = dayjs().format('YYYY-MM-DD HH:mm:ss')
-        const day = localStorage.getItem('day') || "";
-        setTimeDate(timeFormmat);
-        time = dingshi();
-        if (day === timeFormmat.split(" ")[0]) return
-
-    }, 1000);
-}
-
 function setTQ(TQ) {
     const w = TQ.lives && TQ.lives.length ? TQ.lives[0] : {};
     w.city && setWeather(`${w.city} ${w.weather} ${w.temperature}℃ ${w.winddirection}风 ${w.windpower}级`);
@@ -199,32 +182,29 @@ function BigScreenHome() {
     let $ele = undefined, mainHeight = document.body.offsetHeight * 0.925 - 124;
 
     onMount(() => {
-        setTimeDate(dayjs().format('YYYY-MM-DD HH:mm:ss'));
+        setTimeDate(dayjs().format('YYYY-MM-DD'));
         seteHeight(Math.floor($ele.offsetWidth / 16 * 9) + 70);
-        time = dingshi();
-
         getWeather().then(r => setTQ(r.data))
         getData().then(r => {
             if (r.code != 0) return
-            createEffect(() => {
-                const newHeadTitle = [], newproTv = JSON.parse(JSON.stringify(proTv()));
-                for (let i = 0; i < HeadTitle().length; i++) {
-                    const v = JSON.parse(JSON.stringify(HeadTitle()[i]));
-                    if (v.title === '重大活动传播总量') v.value = r.data.activity_total.data
-                    if (v.title === "新媒体月度传播力") v.value = r.data.media_month_play.data
-                    if (v.title === "传统媒体-昨日收视时长") v.value = (r.data.media_overview.data.timeCount / 60).toFixed(0)
-                    if (v.title === "传统媒体-日收视次数") v.value = r.data.media_overview.data.watchCount
-                    if (v.title === "传统媒体-日活跃用户") v.value = r.data.media_overview.data.activeUser
-                    if (v.title === "传统媒体-覆盖终端") v.value = r.data.media_overview.data.totalUser
-                    newHeadTitle.push(v)
-                }
-                newproTv[0].value = r.data.cm_tv_overview.data.watchRate;
-                newproTv[1].value = r.data.cm_tv_overview.data.occRate;
-                newproTv[2].value = r.data.cm_tv_overview.data.loyalty;
-                setoriData(r.data || {})
-                setHeadTitle(newHeadTitle)
-                setproTv(newproTv)
-            })
+            const newHeadTitle = [], newproTv = proTv(), HeadTitleData = HeadTitle(), d = r.data || {};
+            console.log('-')
+            for (let i = 0; i < HeadTitleData.length; i++) {
+                const v = HeadTitleData[i];
+                if (v.title === '重大活动传播总量') v.value = d.activity_total.data
+                else if (v.title === "新媒体月度传播力") v.value = d.media_month_play.data
+                else if (v.title === "传统媒体-昨日收视时长") v.value = (d.media_overview.data.timeCount / 60).toFixed(0)
+                else if (v.title === "传统媒体-日收视次数") v.value = d.media_overview.data.watchCount
+                else if (v.title === "传统媒体-日活跃用户") v.value = d.media_overview.data.activeUser
+                else if (v.title === "传统媒体-覆盖终端") v.value = d.media_overview.data.totalUser
+                newHeadTitle.push(v)
+            }
+            newproTv[0].value = d.cm_tv_overview.data.watchRate;
+            newproTv[1].value = d.cm_tv_overview.data.occRate;
+            newproTv[2].value = d.cm_tv_overview.data.loyalty;
+            setoriData(d || {})
+            setHeadTitle(newHeadTitle)
+            setproTv(newproTv)
         })
         // TODO: 浏览器获取定位权限
         // const location = navigator.geolocation || false;