no message

This commit is contained in:
A1300399510 2023-12-18 18:47:07 +08:00
parent 8f6393c912
commit 18b3daefde
26 changed files with 493 additions and 226 deletions

View File

@ -1,5 +1,5 @@
{ {
"date": "2023-12-15T09:06:26.981Z", "date": "2023-12-18T10:46:23.705Z",
"preset": "node-server", "preset": "node-server",
"framework": { "framework": {
"name": "nuxt", "name": "nuxt",

View File

@ -1 +1 @@
{"id":"1e6a2d4e-548a-428c-ad50-9848287242f5","timestamp":1702631176566} {"id":"3f40664d-7f05-422a-965e-10d06a0e6803","timestamp":1702896372708}

View File

@ -1 +0,0 @@
{"id":"1e6a2d4e-548a-428c-ad50-9848287242f5","timestamp":1702631176566,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

View File

@ -0,0 +1 @@
{"id":"3f40664d-7f05-422a-965e-10d06a0e6803","timestamp":1702896372708,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as i,t as a,v as r,x as n,y as e,z as s,D as l,E as d}from"./entry.7cbcb895.js";const c=t=>(l("data-v-df79c84d"),t=t(),d(),t),p={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},f=c(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},g=["textContent"],m=["textContent"],x={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const o=t;return a({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(u,b)=>(r(),n("div",p,[f,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,m)])]))}},w=i(x,[["__scopeId","data-v-df79c84d"]]);export{w as default}; import{_ as i,t as a,v as r,x as n,y as e,z as s,D as l,E as d}from"./entry.f854d2a1.js";const c=t=>(l("data-v-df79c84d"),t=t(),d(),t),p={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},f=c(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},g=["textContent"],m=["textContent"],x={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const o=t;return a({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(u,b)=>(r(),n("div",p,[f,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,m)])]))}},w=i(x,[["__scopeId","data-v-df79c84d"]]);export{w as default};

View File

@ -159,7 +159,7 @@ const client_manifest = {
"prefetch": true, "prefetch": true,
"preload": true, "preload": true,
"css": [], "css": [],
"file": "error-404.eb99afb2.js", "file": "error-404.c0709d99.js",
"imports": [ "imports": [
"node_modules/nuxt/dist/app/entry.js" "node_modules/nuxt/dist/app/entry.js"
], ],
@ -185,7 +185,7 @@ const client_manifest = {
"prefetch": true, "prefetch": true,
"preload": true, "preload": true,
"css": [], "css": [],
"file": "error-500.a72ffb41.js", "file": "error-500.799ea7bb.js",
"imports": [ "imports": [
"node_modules/nuxt/dist/app/entry.js" "node_modules/nuxt/dist/app/entry.js"
], ],
@ -202,7 +202,7 @@ const client_manifest = {
"resourceType": "style", "resourceType": "style",
"prefetch": true, "prefetch": true,
"preload": true, "preload": true,
"file": "entry.d0051705.css", "file": "entry.ed8eded5.css",
"src": "node_modules/nuxt/dist/app/entry.css" "src": "node_modules/nuxt/dist/app/entry.css"
}, },
"node_modules/nuxt/dist/app/entry.js": { "node_modules/nuxt/dist/app/entry.js": {
@ -234,19 +234,19 @@ const client_manifest = {
"triangle-icon.c39ff2e7.svg" "triangle-icon.c39ff2e7.svg"
], ],
"css": [ "css": [
"entry.d0051705.css" "entry.ed8eded5.css"
], ],
"dynamicImports": [ "dynamicImports": [
"node_modules/@nuxt/ui-templates/dist/templates/error-404.vue", "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue",
"node_modules/@nuxt/ui-templates/dist/templates/error-500.vue" "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue"
], ],
"file": "entry.7cbcb895.js", "file": "entry.f854d2a1.js",
"isEntry": true, "isEntry": true,
"src": "node_modules/nuxt/dist/app/entry.js", "src": "node_modules/nuxt/dist/app/entry.js",
"_globalCSS": true "_globalCSS": true
}, },
"entry.d0051705.css": { "entry.ed8eded5.css": {
"file": "entry.d0051705.css", "file": "entry.ed8eded5.css",
"resourceType": "style", "resourceType": "style",
"prefetch": true, "prefetch": true,
"preload": true "preload": true

View File

@ -1,4 +1,4 @@
import { version, ref, watchEffect, watch, getCurrentInstance, defineComponent, hasInjectionContext, unref, inject, useSSRContext, createApp, effectScope, reactive, onUnmounted, nextTick, defineAsyncComponent, provide, onErrorCaptured, onServerPrefetch, createVNode, resolveDynamicComponent, toRef, h, isReadonly, isRef, isShallow, isReactive, toRaw, withCtx, createTextVNode, toDisplayString, mergeProps } from 'vue'; import { version, ref, watchEffect, watch, getCurrentInstance, defineComponent, hasInjectionContext, unref, inject, useSSRContext, createApp, effectScope, reactive, onUnmounted, toRef, isRef, nextTick, defineAsyncComponent, provide, onErrorCaptured, onServerPrefetch, createVNode, resolveDynamicComponent, h, isReadonly, isShallow, isReactive, toRaw, withCtx, createTextVNode, toDisplayString, mergeProps } from 'vue';
import { d as useRuntimeConfig$1, $ as $fetch, w as withQuery, l as hasProtocol, p as parseURL, m as isScriptProtocol, j as joinURL, h as createError$1, n as sanitizeStatusCode, o as createHooks, q as isEqual, r as stringifyParsedURL, t as stringifyQuery, v as parseQuery } from '../nitro/node-server.mjs'; import { d as useRuntimeConfig$1, $ as $fetch, w as withQuery, l as hasProtocol, p as parseURL, m as isScriptProtocol, j as joinURL, h as createError$1, n as sanitizeStatusCode, o as createHooks, q as isEqual, r as stringifyParsedURL, t as stringifyQuery, v as parseQuery } from '../nitro/node-server.mjs';
import { getActiveHead } from 'unhead'; import { getActiveHead } from 'unhead';
import { defineHeadPlugin, composableNames } from '@unhead/shared'; import { defineHeadPlugin, composableNames } from '@unhead/shared';
@ -1002,6 +1002,32 @@ defineComponent({
}, },
setup: setupForUseMeta((bodyAttrs) => ({ bodyAttrs }), true) setup: setupForUseMeta((bodyAttrs) => ({ bodyAttrs }), true)
}); });
const useStateKeyPrefix = "$s";
function useState(...args) {
const autoKey = typeof args[args.length - 1] === "string" ? args.pop() : void 0;
if (typeof args[0] !== "string") {
args.unshift(autoKey);
}
const [_key, init] = args;
if (!_key || typeof _key !== "string") {
throw new TypeError("[nuxt] [useState] key must be a string: " + _key);
}
if (init !== void 0 && typeof init !== "function") {
throw new Error("[nuxt] [useState] init must be a function: " + init);
}
const key = useStateKeyPrefix + _key;
const nuxt = /* @__PURE__ */ useNuxtApp();
const state = toRef(nuxt.payload.state, key);
if (state.value === void 0 && init) {
const initialValue = init();
if (isRef(initialValue)) {
nuxt.payload.state[key] = initialValue;
return initialValue;
}
state.value = initialValue;
}
return state;
}
const _imports_0 = "" + __buildAssetsURL("logo.6622f82d.png"); const _imports_0 = "" + __buildAssetsURL("logo.6622f82d.png");
const _imports_1 = "data:image/png;base64,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"; const _imports_1 = "data:image/png;base64,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";
const _imports_2 = "data:image/png;base64,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"; const _imports_2 = "data:image/png;base64,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";
@ -1115,6 +1141,8 @@ const _sfc_main$2 = {
let isNeedLogin = ref(true); let isNeedLogin = ref(true);
const goLogin = () => ajax_login(); const goLogin = () => ajax_login();
const route = useRoute(); const route = useRoute();
let detailsInfoDataVuex = useState("detailsInfoData", () => {
});
const baseURL2 = "https://ask.gter.net"; const baseURL2 = "https://ask.gter.net";
let type = ref("list"); let type = ref("list");
let originUrl = ref(""); let originUrl = ref("");
@ -1269,7 +1297,6 @@ const _sfc_main$2 = {
detailsToken = data["token"] || ""; detailsToken = data["token"] || "";
detailShare.value = data["share"] || {}; detailShare.value = data["share"] || {};
type.value = "details"; type.value = "details";
closeBottom();
if (index !== null && index !== void 0) if (index !== null && index !== void 0)
cut(index); cut(index);
else else
@ -1282,14 +1309,11 @@ const _sfc_main$2 = {
openIAnswer(); openIAnswer();
seo.value = data.seo; seo.value = data.seo;
yourAnswer.value = { yourAnswer.value = {
// 初始化 我来回答的框
text: "", text: "",
anonymous: 0 anonymous: 0
}; };
detailsAreaScrollTop(); nextTick(() => detailsAreaScrollTop());
}).finally(() => { }).finally(() => detailLoading.value = false);
detailLoading.value = false;
});
}; };
const detailsAreaScrollTop = () => { const detailsAreaScrollTop = () => {
let detailsArea = document.querySelector(".details-area-box"); let detailsArea = document.querySelector(".details-area-box");
@ -1300,7 +1324,7 @@ const _sfc_main$2 = {
}; };
const calculateListIndex = (info, uniqid) => { const calculateListIndex = (info, uniqid) => {
let targetList = [...list.value]; let targetList = [...list.value];
if (targetList.length == 0 && isSearchMode.value == false) { if (targetList.length == 0 && isSearchMode.value == false && myModelState.value == false) {
setTimeout(() => calculateListIndex(info, uniqid), 200); setTimeout(() => calculateListIndex(info, uniqid), 200);
return; return;
} }
@ -1934,11 +1958,9 @@ const _sfc_main$2 = {
if (newtype == "list") { if (newtype == "list") {
width = "1200px"; width = "1200px";
margin = "0 auto"; margin = "0 auto";
height = Math.ceil(list.value.length / 2) * 128 + "px";
} else { } else {
width = "calc((100vw - 1200px) / 2 + 512px)"; width = "calc((100vw - 1200px) / 2 + 512px)";
margin = "initial"; margin = "initial";
height = list.value.length * 128 + "px";
} }
return { return {
width, width,
@ -1946,22 +1968,36 @@ const _sfc_main$2 = {
height height
}; };
}; };
let listHeight = ref(0);
let itemHeightLeft = 0;
let itemHeightRight = 0;
const itemStyle = (index, content) => { const itemStyle = (index, content) => {
if (index == 0) {
itemHeightLeft = 0;
itemHeightRight = 0;
}
const newtype = type.value; const newtype = type.value;
let obj = {}; let obj = {};
if (newtype == "list") { if (newtype == "list") {
let top = Math.floor(index / 2) * 128 + "px"; if (itemHeightLeft <= itemHeightRight) {
obj["top"] = top; obj["top"] = itemHeightLeft + "px";
if (index % 2 == 0) itemHeightLeft += content == "" ? 107 : 136;
obj["left"] = 0; obj["left"] = 0;
else
obj["left"] = "649px";
} else { } else {
obj["top"] = index * 128 + "px"; obj["top"] = itemHeightRight + "px";
itemHeightRight += content == "" ? 107 : 136;
obj["left"] = "649px";
}
} else {
obj["top"] = itemHeightLeft + "px";
itemHeightLeft += content == "" ? 107 : 136;
obj["height"] = content == "" ? "107px" : "136px";
obj["left"] = 0; obj["left"] = 0;
obj["width"] = "100%"; obj["width"] = "100%";
obj["paddingLeft"] = "calc((100vw - 1200px) / 2)"; obj["paddingLeft"] = "calc((100vw - 1200px) / 2)";
} }
if (index + 1 == list.value.length)
listHeight.value = Math.max(itemHeightLeft, itemHeightRight);
return obj; return obj;
}; };
const bottomTpsStyle = (index, content) => { const bottomTpsStyle = (index, content) => {
@ -1971,8 +2007,11 @@ const _sfc_main$2 = {
; ;
else { else {
obj["width"] = "calc(50vw - 88px)"; obj["width"] = "calc(50vw - 88px)";
obj["height"] = `calc(100vh - ${list.value.length * 128}px - 268px)`;
obj["paddingLeft"] = "calc((100vw - 1200px) / 2)"; obj["paddingLeft"] = "calc((100vw - 1200px) / 2)";
obj["borderRight"] = "1px solid #ebebeb"; obj["borderRight"] = "1px solid #ebebeb";
obj["borderRight"] = "1px solid #ebebeb";
obj["background"] = "#fff";
} }
return obj; return obj;
}; };
@ -2041,6 +2080,10 @@ const _sfc_main$2 = {
$ajaxGET("/api/operate/share?token=" + token); $ajaxGET("/api/operate/share?token=" + token);
}; };
const closeDetailMode = () => { const closeDetailMode = () => {
if (myModelState.value) {
closeMyModel();
return;
}
type.value = "list"; type.value = "list";
openBottom(); openBottom();
pitchIndex.value = null; pitchIndex.value = null;
@ -2152,14 +2195,42 @@ const _sfc_main$2 = {
const replaceState = (obj = {}) => { const replaceState = (obj = {}) => {
return; return;
}; };
let myModelState = ref(false);
let myModelList = ref([]);
let temporaryData = {};
const myOpenDetails = (uniqid) => { const myOpenDetails = (uniqid) => {
if (!uniqid) { if (!uniqid) {
handleMsg("error", "没有找到相关提问"); handleMsg("error", "没有找到相关提问");
return; return;
} }
if (!myModelState.value) {
temporaryData = {
total: total.value,
keywordText: keywordText.value,
isSearchMode: isSearchMode.value,
type: type.value,
pitchIndex: pitchIndex.value,
listlist: JSON.parse(JSON.stringify(list.value))
};
list.value = JSON.parse(JSON.stringify(myModelList.value));
myModelState.value = true;
pitchIndex.value = null;
}
getDetails(uniqid); getDetails(uniqid);
myType.value = ""; myType.value = "";
}; };
const closeMyModel = () => {
myModelList.value = JSON.parse(JSON.stringify(list.value));
isSearchMode.value = temporaryData["isSearchMode"];
keywordText.value = temporaryData["keywordText"];
total.value = temporaryData["total"];
type.value = temporaryData["type"];
pitchIndex.value = temporaryData["pitchIndex"];
list.value = JSON.parse(JSON.stringify(temporaryData.listlist));
myModelState.value = false;
let uniqid = list.value[pitchIndex.value]["uniqid"];
getDetails(uniqid);
};
const handleDetailsScroll = (e) => { const handleDetailsScroll = (e) => {
const el = e.target; const el = e.target;
if (el.scrollHeight - el.scrollTop !== el.clientHeight) if (el.scrollHeight - el.scrollTop !== el.clientHeight)
@ -2231,6 +2302,31 @@ const _sfc_main$2 = {
keyword.value = params["keyword"]; keyword.value = params["keyword"];
if (params["tid"]) if (params["tid"])
typePitch.value = params["tid"]; typePitch.value = params["tid"];
if (params["uniqid"]) {
if (true) {
await axios.post(baseURL2 + "/api/details", { uniqid: params["uniqid"] }).then((response) => {
let res = response.data;
let data = res.data;
detailsInfoDataVuex.value = data;
detailsInfo.value = data["info"] || {};
detailsIsanswered.value = data["isanswered"] || 0;
detailsIscollection.value = data["iscollection"] || 0;
detailsIsmyself.value = data["ismyself"] || 0;
detailsToken = data["token"] || "";
detailShare.value = data["share"] || {};
type.value = "details";
calculateListIndex(data.info, params["uniqid"]);
answerList.value = [];
answerPage.value = 1;
getAnswerList();
closeAllTransmitState();
replaceState({ uniqid: params["uniqid"] });
seo.value = data.seo;
}).catch((error) => {
console.error(error);
});
}
}
await $ajax("/api/lists", { await $ajax("/api/lists", {
page, page,
limit: 20, limit: 20,
@ -2325,7 +2421,7 @@ const _sfc_main$2 = {
if (answerList.value[index]["uin"] > 0) if (answerList.value[index]["uin"] > 0)
answerList.value[index]["avatarState"] = !answerList.value[index]["avatarState"]; answerList.value[index]["avatarState"] = !answerList.value[index]["avatarState"];
} else { } else {
if (detailsInfo["uin"] > 0) if (detailsInfo.value["uin"] > 0)
avatarState.value = !avatarState.value; avatarState.value = !avatarState.value;
} }
}; };
@ -2341,13 +2437,6 @@ const _sfc_main$2 = {
link.target = "_blank"; link.target = "_blank";
link.click(); link.click();
}; };
const closeBottom = () => {
const footer = document.querySelector("body .index-footer");
if (footer)
footer.style.display = "none";
else
setTimeout(() => closeBottom(), 1e3);
};
const openBottom = () => { const openBottom = () => {
const footer = document.querySelector("body .index-footer"); const footer = document.querySelector("body .index-footer");
if (footer) if (footer)
@ -2356,6 +2445,10 @@ const _sfc_main$2 = {
setTimeout(() => openBottom(), 1e3); setTimeout(() => openBottom(), 1e3);
}; };
return { return {
closeMyModel,
myModelList,
myModelState,
listHeight,
bottomTpsStyle, bottomTpsStyle,
TAHomePage, TAHomePage,
sendMessage, sendMessage,
@ -2555,12 +2648,14 @@ function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $op
_push(`<!--]--><!--]-->`); _push(`<!--]--><!--]-->`);
}); });
_push(`<!--]--></div></div></header><div class="${ssrRenderClass([{ "mode-list": $setup.type == "list" }, "main flexflex"])}"><div class="list-box"><div class="main-header" style="${ssrRenderStyle({ paddingLeft: $setup.type == "list" ? 0 : "calc((100vw - 1200px) / 2)" })}">`); _push(`<!--]--></div></div></header><div class="${ssrRenderClass([{ "mode-list": $setup.type == "list" }, "main flexflex"])}"><div class="list-box"><div class="main-header" style="${ssrRenderStyle({ paddingLeft: $setup.type == "list" ? 0 : "calc((100vw - 1200px) / 2)" })}">`);
if ($setup.isSearchMode) { if ($setup.myModelState) {
_push(`<div class="search-keyword flexacenter"><div class="ellipsis">我的收藏/提问/回答</div><img class="search-keyword-cross"${ssrRenderAttr("src", _imports_4)}></div>`);
} else if ($setup.isSearchMode) {
_push(`<!--[--><div class="search-keyword flexacenter"><div class="ellipsis">${ssrInterpolate($setup.keywordText)}</div><img class="search-keyword-cross"${ssrRenderAttr("src", _imports_4)}></div><div class="total grid-item">共 ${ssrInterpolate($setup.total)} 条搜索结果</div><!--]-->`); _push(`<!--[--><div class="search-keyword flexacenter"><div class="ellipsis">${ssrInterpolate($setup.keywordText)}</div><img class="search-keyword-cross"${ssrRenderAttr("src", _imports_4)}></div><div class="total grid-item">共 ${ssrInterpolate($setup.total)} 条搜索结果</div><!--]-->`);
} else { } else {
_push(`<div class="total grid-item">共 ${ssrInterpolate($setup.total)} 条问答</div>`); _push(`<div class="total grid-item">共 ${ssrInterpolate($setup.total)} 条问答</div>`);
} }
_push(`</div><div class="list" id="list" style="${ssrRenderStyle($setup.listStyle())}"><!--[-->`); _push(`</div><div class="list" id="list" style="${ssrRenderStyle([$setup.listStyle(), { height: $setup.listHeight + "px" }])}"><!--[-->`);
ssrRenderList($setup.list, (item, index) => { ssrRenderList($setup.list, (item, index) => {
_push(`<a style="${ssrRenderStyle($setup.itemStyle(index, item["content"]))}" class="${ssrRenderClass([{ pitch: index === $setup.pitchIndex, upLevel: index === $setup.pitchIndex - 1 }, "item grid-item flexflex"])}"${ssrRenderAttr("href", $setup.setItemUrl(item["uniqid"]))}><img class="dot"${ssrRenderAttr("src", _imports_5)}><div class="content" style="${ssrRenderStyle({ width: $setup.type == "list" ? "531px" : "430px" })}"><div class="issue-title flexcenter">`); _push(`<a style="${ssrRenderStyle($setup.itemStyle(index, item["content"]))}" class="${ssrRenderClass([{ pitch: index === $setup.pitchIndex, upLevel: index === $setup.pitchIndex - 1 }, "item grid-item flexflex"])}"${ssrRenderAttr("href", $setup.setItemUrl(item["uniqid"]))}><img class="dot"${ssrRenderAttr("src", _imports_5)}><div class="content" style="${ssrRenderStyle({ width: $setup.type == "list" ? "531px" : "430px" })}"><div class="issue-title flexcenter">`);
if (item["ishot"] == 1) { if (item["ishot"] == 1) {
@ -2568,9 +2663,19 @@ function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $op
} else { } else {
_push(`<!---->`); _push(`<!---->`);
} }
_push(`<div class="issue ellipsis flex1">${item["title"]}</div></div><div class="answer ellipsis">${item["content"]}</div><div class="bottom flexacenter">`); _push(`<div class="recommend flexcenter">推荐阅读</div><div class="issue ellipsis flex1">${item["title"]}</div></div>`);
{
_push(`<!--[-->`);
if (item["content"]) {
_push(`<div class="answer ellipsis">${item["content"]}</div>`);
} else {
_push(`<!---->`);
}
_push(`<!--]-->`);
}
_push(`<div class="bottom flexacenter">`);
if (item["typename"]) { if (item["typename"]) {
_push(`<div class="typename">${ssrInterpolate(item["typename"])}</div>`); _push(`<div class="typename flexcenter">${ssrInterpolate(item["typename"])}</div>`);
} else { } else {
_push(`<div></div>`); _push(`<div></div>`);
} }
@ -2588,6 +2693,11 @@ function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $op
} else { } else {
_push(`<!---->`); _push(`<!---->`);
} }
if ($setup.myModelState) {
_push(`<div class="bottom-tps" style="${ssrRenderStyle($setup.bottomTpsStyle())}"></div>`);
} else {
_push(`<!---->`);
}
if ($setup.isListEmptyState && $setup.list.length == 0) { if ($setup.isListEmptyState && $setup.list.length == 0) {
_push(`<div class="empty-box flexcenter"><div class="dot-list flexacenter"><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_8)}><img class="item"${ssrRenderAttr("src", _imports_8)}><img class="item"${ssrRenderAttr("src", _imports_8)}></div><img class="empty-icon"${ssrRenderAttr("src", _imports_9)}>`); _push(`<div class="empty-box flexcenter"><div class="dot-list flexacenter"><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_7)}><img class="item"${ssrRenderAttr("src", _imports_8)}><img class="item"${ssrRenderAttr("src", _imports_8)}><img class="item"${ssrRenderAttr("src", _imports_8)}></div><img class="empty-icon"${ssrRenderAttr("src", _imports_9)}>`);
if ($setup.isSearchMode) { if ($setup.isSearchMode) {
@ -2607,7 +2717,13 @@ function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $op
} else { } else {
_push(`<!---->`); _push(`<!---->`);
} }
_push(`<div class="details-box flexflex"><div class="close-box"><div class="close-circle flexcenter"><img class="close-icon"${ssrRenderAttr("src", _imports_10)}><img class="details-cross-icon"${ssrRenderAttr("src", _imports_11)}></div></div><div class="details-issue"><img class="qq"${ssrRenderAttr("src", _imports_12)}><div class="titletitle">${ssrInterpolate($setup.detailsInfo["title"])}</div><div class="hint">${$setup.detailsInfo["content"]}</div><div class="info-box flexacenter"><div class="user-info flexacenter">`); _push(`<div class="details-box flexflex"><div class="close-box"><div class="close-circle flexcenter"><img class="close-icon"${ssrRenderAttr("src", _imports_10)}><img class="details-cross-icon"${ssrRenderAttr("src", _imports_11)}></div></div><div class="details-issue"><img class="qq"${ssrRenderAttr("src", _imports_12)}><div class="titletitle">${ssrInterpolate($setup.detailsInfo["title"])}</div>`);
if ($setup.detailsInfo["content"]) {
_push(`<div class="hint">${$setup.detailsInfo["content"]}</div>`);
} else {
_push(`<!---->`);
}
_push(`<div class="info-box flexacenter"><div class="user-info flexacenter">`);
if ($setup.detailsInfo["avatar"]) { if ($setup.detailsInfo["avatar"]) {
_push(`<img class="avatar"${ssrRenderAttr("src", $setup.detailsInfo["avatar"])}>`); _push(`<img class="avatar"${ssrRenderAttr("src", $setup.detailsInfo["avatar"])}>`);
} else { } else {

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"version":3,"file":"entry-styles.01300843.mjs","sources":["../../../../../.nuxt/dist/server/static/entry-styles-1.mjs-0949f21b.js","../../../../../.nuxt/dist/server/static/entry-styles.01300843.mjs"],"sourcesContent":null,"names":["__buildAssetsURL","style_0"],"mappings":";;;;;;;;;;;;;;;;AAAA,MAAA,mCAAA,GAAA,2pMAAA,GAAAA,cAAA,CAAA,4BAAA,CAAA,GAAA,05rCAAA;;ACCA,6BAAe,CAACC,mCAAO;;;;"}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
{"version":3,"file":"entry-styles.a457ca3a.mjs","sources":["../../../../../.nuxt/dist/server/static/entry-styles-1.mjs-6ea54b9b.js","../../../../../.nuxt/dist/server/static/entry-styles.a457ca3a.mjs"],"sourcesContent":null,"names":["__buildAssetsURL","style_0"],"mappings":";;;;;;;;;;;;;;;;AAAA,MAAA,mCAAA,GAAA,+mMAAA,GAAAA,cAAA,CAAA,4BAAA,CAAA,GAAA,8qsCAAA;;ACCA,6BAAe,CAACC,mCAAO;;;;"}

View File

@ -1,6 +1,6 @@
const interopDefault = r => r.default || r || []; const interopDefault = r => r.default || r || [];
const styles = { const styles = {
"node_modules/nuxt/dist/app/entry.js": () => import('./static/entry-styles.01300843.mjs').then(interopDefault), "node_modules/nuxt/dist/app/entry.js": () => import('./static/entry-styles.a457ca3a.mjs').then(interopDefault),
"node_modules/@nuxt/ui-templates/dist/templates/error-404.vue": () => import('./static/error-404-styles.1e0dde27.mjs').then(interopDefault), "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue": () => import('./static/error-404-styles.1e0dde27.mjs').then(interopDefault),
"node_modules/@nuxt/ui-templates/dist/templates/error-500.vue": () => import('./static/error-500-styles.cf4b3e80.mjs').then(interopDefault) "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue": () => import('./static/error-500-styles.cf4b3e80.mjs').then(interopDefault)
}; };

View File

@ -3059,7 +3059,7 @@ function klona(x) {
const inlineAppConfig = { const inlineAppConfig = {
"nuxt": { "nuxt": {
"buildId": "1e6a2d4e-548a-428c-ad50-9848287242f5" "buildId": "3f40664d-7f05-422a-965e-10d06a0e6803"
} }
}; };
@ -4949,205 +4949,205 @@ const assets = {
"/static/add-icon.0b0b5313.svg": { "/static/add-icon.0b0b5313.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"d67-gajxuGcy6aHIeWAbO0RazX03p90\"", "etag": "\"d67-gajxuGcy6aHIeWAbO0RazX03p90\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.284Z",
"size": 3431, "size": 3431,
"path": "../public/static/add-icon.0b0b5313.svg" "path": "../public/static/add-icon.0b0b5313.svg"
}, },
"/static/arrows-icon.271dd0d3.svg": { "/static/arrows-icon.271dd0d3.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"5a0-yAit7q5lcKJMd35iOMMifZv2uno\"", "etag": "\"5a0-yAit7q5lcKJMd35iOMMifZv2uno\"",
"mtime": "2023-12-15T09:06:20.496Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 1440, "size": 1440,
"path": "../public/static/arrows-icon.271dd0d3.svg" "path": "../public/static/arrows-icon.271dd0d3.svg"
}, },
"/static/close-icon.86743366.svg": { "/static/close-icon.86743366.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"2d4-QYrulZl33jopLCT37UdJfnzXOVg\"", "etag": "\"2d4-QYrulZl33jopLCT37UdJfnzXOVg\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 724, "size": 724,
"path": "../public/static/close-icon.86743366.svg" "path": "../public/static/close-icon.86743366.svg"
}, },
"/static/collect-icon-colours.6d2ade7f.svg": { "/static/collect-icon-colours.6d2ade7f.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"7ab-av9D1DgxgD5cvY5wd30haD7c1q0\"", "etag": "\"7ab-av9D1DgxgD5cvY5wd30haD7c1q0\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 1963, "size": 1963,
"path": "../public/static/collect-icon-colours.6d2ade7f.svg" "path": "../public/static/collect-icon-colours.6d2ade7f.svg"
}, },
"/static/comment-icon-gray.2c8779f9.svg": { "/static/comment-icon-gray.2c8779f9.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"816-HEGvNjvS0TeA/3uJweilvZfCqlk\"", "etag": "\"816-HEGvNjvS0TeA/3uJweilvZfCqlk\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 2070, "size": 2070,
"path": "../public/static/comment-icon-gray.2c8779f9.svg" "path": "../public/static/comment-icon-gray.2c8779f9.svg"
}, },
"/static/delete-icon.4d386dce.svg": { "/static/delete-icon.4d386dce.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"17fe-RGKa0+MaUqOqlbPlXlig67fGkaY\"", "etag": "\"17fe-RGKa0+MaUqOqlbPlXlig67fGkaY\"",
"mtime": "2023-12-15T09:06:20.499Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 6142, "size": 6142,
"path": "../public/static/delete-icon.4d386dce.svg" "path": "../public/static/delete-icon.4d386dce.svg"
}, },
"/static/dot-gray.86cdd7b5.svg": { "/static/dot-gray.86cdd7b5.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"2af-sBMsuPZbsh28jzlFWO9lVYMVDk8\"", "etag": "\"2af-sBMsuPZbsh28jzlFWO9lVYMVDk8\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 687, "size": 687,
"path": "../public/static/dot-gray.86cdd7b5.svg" "path": "../public/static/dot-gray.86cdd7b5.svg"
}, },
"/static/dot-yellow.4b5e135b.svg": { "/static/dot-yellow.4b5e135b.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"2af-6L7YsWhGTHBB6NqQztB/l2OFRfE\"", "etag": "\"2af-6L7YsWhGTHBB6NqQztB/l2OFRfE\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 687, "size": 687,
"path": "../public/static/dot-yellow.4b5e135b.svg" "path": "../public/static/dot-yellow.4b5e135b.svg"
}, },
"/static/dot.1026a040.svg": { "/static/dot.1026a040.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"217-dx6xqUT4D9pCoKc6nr20aXeJQXQ\"", "etag": "\"217-dx6xqUT4D9pCoKc6nr20aXeJQXQ\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 535, "size": 535,
"path": "../public/static/dot.1026a040.svg" "path": "../public/static/dot.1026a040.svg"
}, },
"/static/edit-icon-white.29b27582.svg": { "/static/edit-icon-white.29b27582.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"8be-EnEF3CQI46JkMNAXbPf3H6T7pzU\"", "etag": "\"8be-EnEF3CQI46JkMNAXbPf3H6T7pzU\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 2238, "size": 2238,
"path": "../public/static/edit-icon-white.29b27582.svg" "path": "../public/static/edit-icon-white.29b27582.svg"
}, },
"/static/empty-icon.24a01ae2.svg": { "/static/empty-icon.24a01ae2.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"d028-Our2UxxUiciRSduORd8JZCt5Prw\"", "etag": "\"d028-Our2UxxUiciRSduORd8JZCt5Prw\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 53288, "size": 53288,
"path": "../public/static/empty-icon.24a01ae2.svg" "path": "../public/static/empty-icon.24a01ae2.svg"
}, },
"/static/entry.7cbcb895.js": { "/static/entry.ed8eded5.css": {
"type": "application/javascript",
"etag": "\"3ae6e-rdRTMu3GqcKv8DlFipBPR16yEuA\"",
"mtime": "2023-12-15T09:06:20.500Z",
"size": 241262,
"path": "../public/static/entry.7cbcb895.js"
},
"/static/entry.d0051705.css": {
"type": "text/css; charset=utf-8", "type": "text/css; charset=utf-8",
"etag": "\"af21-CGiztCz4hW+9/5WvV+/bg9wGCGE\"", "etag": "\"affc-d0rY1PQKoyVsSBMxQXhALr0um0Q\"",
"mtime": "2023-12-15T09:06:20.500Z", "mtime": "2023-12-18T10:46:17.287Z",
"size": 44833, "size": 45052,
"path": "../public/static/entry.d0051705.css" "path": "../public/static/entry.ed8eded5.css"
},
"/static/entry.f854d2a1.js": {
"type": "application/javascript",
"etag": "\"3b725-MNExsXumHo20ja/sdmcuoc/7gUc\"",
"mtime": "2023-12-18T10:46:17.287Z",
"size": 243493,
"path": "../public/static/entry.f854d2a1.js"
}, },
"/static/error-404.7fc72018.css": { "/static/error-404.7fc72018.css": {
"type": "text/css; charset=utf-8", "type": "text/css; charset=utf-8",
"etag": "\"e2e-iNt1cqPQ0WDudfCTZVQd31BeRGs\"", "etag": "\"e2e-iNt1cqPQ0WDudfCTZVQd31BeRGs\"",
"mtime": "2023-12-15T09:06:20.500Z", "mtime": "2023-12-18T10:46:17.287Z",
"size": 3630, "size": 3630,
"path": "../public/static/error-404.7fc72018.css" "path": "../public/static/error-404.7fc72018.css"
}, },
"/static/error-404.eb99afb2.js": { "/static/error-404.c0709d99.js": {
"type": "application/javascript", "type": "application/javascript",
"etag": "\"18de-qcXEhgABD3i1NKdXbqS2fsR7wZY\"", "etag": "\"18de-KPf7d/9bilEm75hM7yKrhrhCZag\"",
"mtime": "2023-12-15T09:06:20.500Z", "mtime": "2023-12-18T10:46:17.287Z",
"size": 6366, "size": 6366,
"path": "../public/static/error-404.eb99afb2.js" "path": "../public/static/error-404.c0709d99.js"
}, },
"/static/error-500.a72ffb41.js": { "/static/error-500.799ea7bb.js": {
"type": "application/javascript", "type": "application/javascript",
"etag": "\"756-a7AXATacmK9r/Tkrpmzta0evGas\"", "etag": "\"756-6L8169c2aO0SY4ZeDXiGDxZz664\"",
"mtime": "2023-12-15T09:06:20.500Z", "mtime": "2023-12-18T10:46:17.287Z",
"size": 1878, "size": 1878,
"path": "../public/static/error-500.a72ffb41.js" "path": "../public/static/error-500.799ea7bb.js"
}, },
"/static/error-500.c5df6088.css": { "/static/error-500.c5df6088.css": {
"type": "text/css; charset=utf-8", "type": "text/css; charset=utf-8",
"etag": "\"79e-ByRo+49BgcevWdRjJy3CMx2IA5k\"", "etag": "\"79e-ByRo+49BgcevWdRjJy3CMx2IA5k\"",
"mtime": "2023-12-15T09:06:20.500Z", "mtime": "2023-12-18T10:46:17.287Z",
"size": 1950, "size": 1950,
"path": "../public/static/error-500.c5df6088.css" "path": "../public/static/error-500.c5df6088.css"
}, },
"/static/issue-bj.44adad8c.svg": { "/static/issue-bj.44adad8c.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"926-lK6rrraYIC+9Yxyy0subzOK8XpE\"", "etag": "\"926-lK6rrraYIC+9Yxyy0subzOK8XpE\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 2342, "size": 2342,
"path": "../public/static/issue-bj.44adad8c.svg" "path": "../public/static/issue-bj.44adad8c.svg"
}, },
"/static/logo.6622f82d.png": { "/static/logo.6622f82d.png": {
"type": "image/png", "type": "image/png",
"etag": "\"843f-FSXGFGigIHmtzjdcQzuMz/a7E+o\"", "etag": "\"843f-FSXGFGigIHmtzjdcQzuMz/a7E+o\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 33855, "size": 33855,
"path": "../public/static/logo.6622f82d.png" "path": "../public/static/logo.6622f82d.png"
}, },
"/static/menu-icon-gray.d61f02b1.svg": { "/static/menu-icon-gray.d61f02b1.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"6de-kmXhltPHfF4W1gmV7wT4aZCZ6gg\"", "etag": "\"6de-kmXhltPHfF4W1gmV7wT4aZCZ6gg\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 1758, "size": 1758,
"path": "../public/static/menu-icon-gray.d61f02b1.svg" "path": "../public/static/menu-icon-gray.d61f02b1.svg"
}, },
"/static/QRCode-icon.a105d5fc.svg": { "/static/QRCode-icon.a105d5fc.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"9c1-qGg9jZ5wmHJGzh2A00nHIGWHMh4\"", "etag": "\"9c1-qGg9jZ5wmHJGzh2A00nHIGWHMh4\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 2497, "size": 2497,
"path": "../public/static/QRCode-icon.a105d5fc.svg" "path": "../public/static/QRCode-icon.a105d5fc.svg"
}, },
"/static/tick-no.179037b3.svg": { "/static/tick-no.179037b3.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"1ea-YISAWqJD56jxoQT8N812fDJfkMw\"", "etag": "\"1ea-YISAWqJD56jxoQT8N812fDJfkMw\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 490, "size": 490,
"path": "../public/static/tick-no.179037b3.svg" "path": "../public/static/tick-no.179037b3.svg"
}, },
"/static/tick-option.e092d22f.svg": { "/static/tick-option.e092d22f.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"29a-UVjuq3WHs6mhu1KGQ7gQmJH2Bc4\"", "etag": "\"29a-UVjuq3WHs6mhu1KGQ7gQmJH2Bc4\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 666, "size": 666,
"path": "../public/static/tick-option.e092d22f.svg" "path": "../public/static/tick-option.e092d22f.svg"
}, },
"/static/tick-orange.233abc69.svg": { "/static/tick-orange.233abc69.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"60a-VrP9K+TQp6JbNcrU5k1Dor/Kq/E\"", "etag": "\"60a-VrP9K+TQp6JbNcrU5k1Dor/Kq/E\"",
"mtime": "2023-12-15T09:06:20.499Z", "mtime": "2023-12-18T10:46:17.283Z",
"size": 1546, "size": 1546,
"path": "../public/static/tick-orange.233abc69.svg" "path": "../public/static/tick-orange.233abc69.svg"
}, },
"/static/title.98892974.png": { "/static/title.98892974.png": {
"type": "image/png", "type": "image/png",
"etag": "\"1723-0OwkVass/2nFB99dRT4w0sPUvI0\"", "etag": "\"1723-0OwkVass/2nFB99dRT4w0sPUvI0\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 5923, "size": 5923,
"path": "../public/static/title.98892974.png" "path": "../public/static/title.98892974.png"
}, },
"/static/triangle-icon.c39ff2e7.svg": { "/static/triangle-icon.c39ff2e7.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"446-ylQ81DOJ3joSbsS9atyrW6pZsBY\"", "etag": "\"446-ylQ81DOJ3joSbsS9atyrW6pZsBY\"",
"mtime": "2023-12-15T09:06:20.499Z", "mtime": "2023-12-18T10:46:17.286Z",
"size": 1094, "size": 1094,
"path": "../public/static/triangle-icon.c39ff2e7.svg" "path": "../public/static/triangle-icon.c39ff2e7.svg"
}, },
"/static/view-icon.da7fef35.svg": { "/static/view-icon.da7fef35.svg": {
"type": "image/svg+xml", "type": "image/svg+xml",
"etag": "\"f39-5Jwx14wB0jgB0Du25KRZbkEEXvI\"", "etag": "\"f39-5Jwx14wB0jgB0Du25KRZbkEEXvI\"",
"mtime": "2023-12-15T09:06:20.498Z", "mtime": "2023-12-18T10:46:17.285Z",
"size": 3897, "size": 3897,
"path": "../public/static/view-icon.da7fef35.svg" "path": "../public/static/view-icon.da7fef35.svg"
}, },
"/static/builds/latest.json": { "/static/builds/latest.json": {
"type": "application/json", "type": "application/json",
"etag": "\"47-enxQSI3dmkBtXQL0IPk/zNDhlH0\"", "etag": "\"47-C5z9i+BYb5XjsGqRiIxgLsDRH8o\"",
"mtime": "2023-12-15T09:06:21.765Z", "mtime": "2023-12-18T10:46:18.637Z",
"size": 71, "size": 71,
"path": "../public/static/builds/latest.json" "path": "../public/static/builds/latest.json"
}, },
"/static/builds/meta/1e6a2d4e-548a-428c-ad50-9848287242f5.json": { "/static/builds/meta/3f40664d-7f05-422a-965e-10d06a0e6803.json": {
"type": "application/json", "type": "application/json",
"etag": "\"8b-uBiV7j+Wbkl8F6q68tYvD8raf2o\"", "etag": "\"8b-76f5dMii2Mo8XcADbGZ5FPm5dqs\"",
"mtime": "2023-12-15T09:06:21.765Z", "mtime": "2023-12-18T10:46:18.638Z",
"size": 139, "size": 139,
"path": "../public/static/builds/meta/1e6a2d4e-548a-428c-ad50-9848287242f5.json" "path": "../public/static/builds/meta/3f40664d-7f05-422a-965e-10d06a0e6803.json"
} }
}; };

203
app.vue
View File

@ -10,6 +10,7 @@
<Meta name="keyword" :content="seo['keyword']" /> <Meta name="keyword" :content="seo['keyword']" />
<Meta name="description" :content="seo['description']" /> <Meta name="description" :content="seo['description']" />
</Head> </Head>
<div class="" id="answer-app"> <div class="" id="answer-app">
<header class="flexacenter" id="pageHeader"> <header class="flexacenter" id="pageHeader">
<div class="flexacenter top"> <div class="flexacenter top">
@ -61,7 +62,13 @@
<div class="main flexflex" :class="{'mode-list': type == 'list'}"> <div class="main flexflex" :class="{'mode-list': type == 'list'}">
<div class="list-box" @scroll="handleListScroll"> <div class="list-box" @scroll="handleListScroll">
<div class="main-header" :style="{paddingLeft: type == 'list' ? 0 : 'calc((100vw - 1200px) / 2)'}"> <div class="main-header" :style="{paddingLeft: type == 'list' ? 0 : 'calc((100vw - 1200px) / 2)'}">
<template v-if="isSearchMode"> <template v-if="myModelState">
<div class="search-keyword flexacenter" @click="closeMyModel()">
<div class="ellipsis">我的收藏/提问/回答</div>
<img class="search-keyword-cross" src="./img/cross-circle-icon.png" />
</div>
</template>
<template v-else-if="isSearchMode">
<div class="search-keyword flexacenter" @click="handleClickClear()"> <div class="search-keyword flexacenter" @click="handleClickClear()">
<div class="ellipsis">{{ keywordText }}</div> <div class="ellipsis">{{ keywordText }}</div>
<img class="search-keyword-cross" src="./img/cross-circle-icon.png" /> <img class="search-keyword-cross" src="./img/cross-circle-icon.png" />
@ -77,9 +84,23 @@
<div class="content" :style="{width: type == 'list' ? '531px' : '430px'}"> <div class="content" :style="{width: type == 'list' ? '531px' : '430px'}">
<div class="issue-title flexcenter"> <div class="issue-title flexcenter">
<img class="hot-icon" v-if="item['ishot'] == 1" src="./img/hot-icon.png" /> <img class="hot-icon" v-if="item['ishot'] == 1" src="./img/hot-icon.png" />
<div class="recommend flexcenter">推荐阅读</div>
<div class="issue ellipsis flex1" v-html="item['title']"></div> <div class="issue ellipsis flex1" v-html="item['title']"></div>
</div> </div>
<template v-if="true">
<div class="answer ellipsis" v-if="item['content']" v-html="item['content']"></div> <div class="answer ellipsis" v-if="item['content']" v-html="item['content']"></div>
</template>
<template v-else>
<div class="answer ellipsis flexacenter" v-if="item['content']">
Asian Studies
<div class="halving-line">|</div>
MPhil
<div class="halving-line">|</div>
23Fall
<div class="halving-line">|</div>
offer
</div>
</template>
<div class="bottom flexacenter"> <div class="bottom flexacenter">
<div class="typename flexcenter" v-if="item['typename']">{{ item["typename"] }}</div> <div class="typename flexcenter" v-if="item['typename']">{{ item["typename"] }}</div>
<div v-else></div> <div v-else></div>
@ -96,6 +117,7 @@
</div> </div>
<div class="bottom-tps" :style="bottomTpsStyle()" v-if="inTheEndState">- 到底了 -</div> <div class="bottom-tps" :style="bottomTpsStyle()" v-if="inTheEndState">- 到底了 -</div>
<div class="bottom-tps" :style="bottomTpsStyle()" v-if="myModelState"></div>
<div class="empty-box flexcenter" v-if="isListEmptyState && list.length == 0"> <div class="empty-box flexcenter" v-if="isListEmptyState && list.length == 0">
<div class="dot-list flexacenter"><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-gray.svg" /><img class="item" src="./img/dot-gray.svg" /><img class="item" src="./img/dot-gray.svg" /></div> <div class="dot-list flexacenter"><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-yellow.svg" /><img class="item" src="./img/dot-gray.svg" /><img class="item" src="./img/dot-gray.svg" /><img class="item" src="./img/dot-gray.svg" /></div>
@ -127,7 +149,7 @@
<!-- <div class="icon q flexcenter">Q</div> --> <!-- <div class="icon q flexcenter">Q</div> -->
<img class="qq" src="@/img/Q.png" /> <img class="qq" src="@/img/Q.png" />
<div class="titletitle">{{ detailsInfo["title"] }}</div> <div class="titletitle">{{ detailsInfo["title"] }}</div>
<div class="hint" @click="handleAnswerText" v-html="detailsInfo['content']"></div> <div class="hint" @click="handleAnswerText" v-if="detailsInfo['content']" v-html="detailsInfo['content']"></div>
<div class="info-box flexacenter"> <div class="info-box flexacenter">
<div class="user-info flexacenter" @click="openUserInfo()"> <div class="user-info flexacenter" @click="openUserInfo()">
<img class="avatar" v-if="detailsInfo['avatar']" :src="detailsInfo['avatar']" /> <img class="avatar" v-if="detailsInfo['avatar']" :src="detailsInfo['avatar']" />
@ -775,6 +797,8 @@ export default {
const route = useRoute() const route = useRoute()
let detailsInfoDataVuex = useState("detailsInfoData", () => {})
const baseURL = "https://ask.gter.net" const baseURL = "https://ask.gter.net"
let type = ref("list") // list details let type = ref("list") // list details
@ -794,10 +818,39 @@ export default {
listenPageBack() listenPageBack()
const params = route.query if (detailsInfoDataVuex.value) hanleServerRequestData()
if (params["uniqid"]) getDetails(params["uniqid"])
}) })
//
const hanleServerRequestData = () => {
const params = route.query
type.value = "details"
let data = detailsInfoDataVuex.value
console.log("data", data)
detailsInfo.value = data["info"] || {}
detailsIsanswered.value = data["isanswered"] || 0
detailsIscollection.value = data["iscollection"] || 0
detailsIsmyself.value = data["ismyself"] || 0
detailsToken = data["token"] || ""
detailShare.value = data["share"] || {}
type.value = "details"
calculateListIndex(data.info, params["uniqid"])
answerList.value = []
answerPage.value = 1
getAnswerList()
closeAllTransmitState()
replaceState({uniqid: params["uniqid"]})
seo.value = data.seo
}
// 退 // 退
let isBackState = false let isBackState = false
// 退 url // 退 url
@ -1072,18 +1125,17 @@ export default {
isBackState = false isBackState = false
seo.value = data.seo seo.value = data.seo
yourAnswer.value = {
// //
yourAnswer.value = {
text: "", text: "",
anonymous: 0, anonymous: 0,
} }
// div // div
detailsAreaScrollTop() nextTick(() => detailsAreaScrollTop())
})
.finally(() => {
detailLoading.value = false
}) })
.finally(() => (detailLoading.value = false))
} }
// div // div
@ -1098,7 +1150,7 @@ export default {
const calculateListIndex = (info, uniqid) => { const calculateListIndex = (info, uniqid) => {
let targetList = [...list.value] let targetList = [...list.value]
if (targetList.length == 0 && isSearchMode.value == false) { if (targetList.length == 0 && isSearchMode.value == false && myModelState.value == false) {
setTimeout(() => calculateListIndex(info, uniqid), 200) setTimeout(() => calculateListIndex(info, uniqid), 200)
return return
} }
@ -1360,7 +1412,6 @@ export default {
return return
} }
// answerList.value[index]['commentState'] = true
const targetAnswerList = [...answerList.value] const targetAnswerList = [...answerList.value]
let content = "" let content = ""
@ -1877,12 +1928,11 @@ export default {
let itemHeightLeft = 0 let itemHeightLeft = 0
let itemHeightRight = 0 let itemHeightRight = 0
const itemStyle = computed((index, content) => { const itemStyle = (index, content) => {
if (index == 0) { if (index == 0) {
itemHeightLeft = 0 itemHeightLeft = 0
itemHeightRight = 0 itemHeightRight = 0
} }
return
const newtype = type.value const newtype = type.value
// let itemHeight = content == "" ? 107 : 128 // let itemHeight = content == "" ? 107 : 128
let obj = {} let obj = {}
@ -1902,49 +1952,29 @@ export default {
itemHeightRight += content == "" ? 107 : 136 itemHeightRight += content == "" ? 107 : 136
obj["left"] = 649 + "px" obj["left"] = 649 + "px"
} }
// if (index % 2 == 0) obj["left"] = 0
// else obj["left"] = 649 + "px"
// if (index % 2 == 0) {
// obj["top"] = itemHeightLeft + "px"
// itemHeightLeft += content == "" ? 107 : 136
// } else {
// obj["top"] = itemHeightRight + "px"
// itemHeightRight += content == "" ? 107 : 136
// }
} else { } else {
obj["top"] = index * 128 + "px" obj["top"] = itemHeightLeft + "px"
itemHeightLeft += content == "" ? 107 : 136
obj["height"] = content == "" ? 107 + "px" : 136 + "px"
obj["left"] = 0 obj["left"] = 0
obj["width"] = "100%" obj["width"] = "100%"
// obj['backgroundColor'] = '#fbfbfb'
obj["paddingLeft"] = "calc((100vw - 1200px) / 2)" obj["paddingLeft"] = "calc((100vw - 1200px) / 2)"
} }
console.log(index + 1, list.value.length) if (index + 1 == list.value.length) listHeight.value = Math.max(itemHeightLeft, itemHeightRight)
if (index + 1 == list.value.length) {
listHeight.value = Math.max(itemHeightLeft, itemHeightRight)
}
return obj return obj
}) }
const bottomTpsStyle = (index, content) => { const bottomTpsStyle = (index, content) => {
const newtype = type.value const newtype = type.value
// let itemHeight = content == "" ? 106 : 128 // let itemHeight = content == "" ? 106 : 128
let obj = {} let obj = {}
if (newtype == "list") { if (newtype == "list") {
// let top = Math.floor(index / 2) * 128 + "px"
// obj["top"] = top
// if (index % 2 == 0) obj["left"] = 0
// else obj["left"] = 649 + "px"
} else { } else {
// obj["top"] = index * 128 + "px"
// obj["left"] = 0
obj["width"] = "calc(50vw - 88px)" obj["width"] = "calc(50vw - 88px)"
obj["height"] = `calc(100vh - ${list.value.length * 128}px - 268px)` obj["height"] = `calc(100vh - ${list.value.length * 128}px - 268px)`
// obj['backgroundColor'] = '#fbfbfb'
obj["paddingLeft"] = "calc((100vw - 1200px) / 2)" obj["paddingLeft"] = "calc((100vw - 1200px) / 2)"
obj["borderRight"] = "1px solid #ebebeb" obj["borderRight"] = "1px solid #ebebeb"
obj["borderRight"] = "1px solid #ebebeb" obj["borderRight"] = "1px solid #ebebeb"
@ -2029,6 +2059,11 @@ export default {
// //
const closeDetailMode = () => { const closeDetailMode = () => {
if (myModelState.value) {
closeMyModel()
return
}
type.value = "list" type.value = "list"
openBottom() openBottom()
pitchIndex.value = null pitchIndex.value = null
@ -2182,6 +2217,11 @@ export default {
window.history.pushState({}, "", `${window.location.pathname}?${params}`) window.history.pushState({}, "", `${window.location.pathname}?${params}`)
} }
let myModelState = ref(false) //
let myModelList = ref([]) //
// let listlist = [] //
let temporaryData = {} //
// //
const myOpenDetails = uniqid => { const myOpenDetails = uniqid => {
if (!uniqid) { if (!uniqid) {
@ -2189,10 +2229,44 @@ export default {
return return
} }
deleteState(["keyword"]) deleteState(["keyword"])
if (!myModelState.value) {
temporaryData = {
total: total.value,
keywordText: keywordText.value,
isSearchMode: isSearchMode.value,
type: type.value,
pitchIndex: pitchIndex.value,
listlist: JSON.parse(JSON.stringify(list.value)),
}
list.value = JSON.parse(JSON.stringify(myModelList.value))
myModelState.value = true
pitchIndex.value = null
}
getDetails(uniqid) getDetails(uniqid)
myType.value = "" myType.value = ""
} }
//
const closeMyModel = () => {
myModelList.value = JSON.parse(JSON.stringify(list.value))
isSearchMode.value = temporaryData["isSearchMode"]
keywordText.value = temporaryData["keywordText"]
total.value = temporaryData["total"]
type.value = temporaryData["type"]
pitchIndex.value = temporaryData["pitchIndex"]
list.value = JSON.parse(JSON.stringify(temporaryData.listlist))
myModelState.value = false
let uniqid = list.value[pitchIndex.value]["uniqid"]
getDetails(uniqid)
}
// //
const handleDetailsScroll = e => { const handleDetailsScroll = e => {
const el = e.target const el = e.target
@ -2288,17 +2362,48 @@ export default {
const params = route.query const params = route.query
if (params["keyword"]) keyword.value = params["keyword"] if (params["keyword"]) keyword.value = params["keyword"]
if (params["tid"]) typePitch.value = params["tid"] if (params["tid"]) typePitch.value = params["tid"]
// if (params["uniqid"]) { if (params["uniqid"]) {
// getDetails(params["uniqid"]) if (process.server) {
// return // const headers = useRequestHeaders(["cookie"])
await axios
.post(baseURL + "/api/details", {uniqid: params["uniqid"]},)
.then(response => {
let res = response.data
let data = res.data
detailsInfoDataVuex.value = data
detailsInfo.value = data["info"] || {}
detailsIsanswered.value = data["isanswered"] || 0
detailsIscollection.value = data["iscollection"] || 0
detailsIsmyself.value = data["ismyself"] || 0
detailsToken = data["token"] || ""
detailShare.value = data["share"] || {}
type.value = "details"
calculateListIndex(data.info, params["uniqid"])
answerList.value = []
answerPage.value = 1
getAnswerList()
closeAllTransmitState()
replaceState({uniqid: params["uniqid"]})
seo.value = data.seo
})
.catch(error => {
console.error(error)
})
}
// if (process.server) {
// await $ajax("/api/details", {uniqid: params["uniqid"]}) // await $ajax("/api/details", {uniqid: params["uniqid"]})
// .then(res => { // .then(res => {
// if (res.code != 200) return // if (res.code != 200) return
// let data = res.data // let data = res.data
// console.log(new Date().getTime())
// detailsInfo.value = data["info"] || {} // detailsInfo.value = data["info"] || {}
// detailsIsanswered.value = data["isanswered"] || 0 // detailsIsanswered.value = data["isanswered"] || 0
// detailsIscollection.value = data["iscollection"] || 0 // detailsIscollection.value = data["iscollection"] || 0
@ -2323,6 +2428,7 @@ export default {
// detailLoading.value = false // detailLoading.value = false
// }) // })
// } // }
}
await $ajax("/api/lists", { await $ajax("/api/lists", {
page, page,
@ -2428,7 +2534,7 @@ export default {
} else if (index != null) { } else if (index != null) {
if (answerList.value[index]["uin"] > 0) answerList.value[index]["avatarState"] = !answerList.value[index]["avatarState"] if (answerList.value[index]["uin"] > 0) answerList.value[index]["avatarState"] = !answerList.value[index]["avatarState"]
} else { } else {
if (detailsInfo["uin"] > 0) avatarState.value = !avatarState.value if (detailsInfo.value["uin"] > 0) avatarState.value = !avatarState.value
} }
} }
@ -2452,6 +2558,8 @@ export default {
// //
const closeBottom = () => { const closeBottom = () => {
if (process.server) return
const footer = document.querySelector("body .index-footer") const footer = document.querySelector("body .index-footer")
if (footer) footer.style.display = "none" if (footer) footer.style.display = "none"
else setTimeout(() => closeBottom(), 1000) else setTimeout(() => closeBottom(), 1000)
@ -2464,6 +2572,9 @@ export default {
} }
return { return {
closeMyModel,
myModelList,
myModelState,
listHeight, listHeight,
bottomTpsStyle, bottomTpsStyle,
TAHomePage, TAHomePage,

2
components/states.js Normal file
View File

@ -0,0 +1,2 @@
export const useCounter = () => useState('counter', () => 0)
export const useColor = () => useState('color', () => 'pink')

View File

@ -298,7 +298,6 @@ a {
max-width: 400px; max-width: 400px;
padding-right: 20px; padding-right: 20px;
margin-right: 20px; margin-right: 20px;
border-right: 1px solid #ebebeb;
} }
#answer-app .main .main-header .search-keyword .search-keyword-cross { #answer-app .main .main-header .search-keyword .search-keyword-cross {
width: 14px; width: 14px;
@ -397,6 +396,17 @@ a {
#answer-app .main .list-box .list .item .content .issue-title .issue em { #answer-app .main .list-box .list .item .content .issue-title .issue em {
color: #ff0000; color: #ff0000;
} }
#answer-app .main .list-box .list .item .content .issue-title .recommend {
font-size: 12px;
color: #72DB86;
text-align: center;
width: 58px;
height: 21px;
background-color: rgba(114, 219, 134, 0.117647);
padding: 0 5px;
border-radius: 5px;
margin-right: 10px;
}
#answer-app .main .list-box .list .item .content .answer { #answer-app .main .list-box .list .item .content .answer {
color: #555; color: #555;
height: 22px; height: 22px;
@ -408,6 +418,10 @@ a {
#answer-app .main .list-box .list .item .content .answer em { #answer-app .main .list-box .list .item .content .answer em {
color: #ff0000; color: #ff0000;
} }
#answer-app .main .list-box .list .item .content .answer .halving-line {
margin: 0 10px;
color: #D7D7D7;
}
#answer-app .main .list-box .list .item .content .bottom { #answer-app .main .list-box .list .item .content .bottom {
margin-top: 18px; margin-top: 18px;
font-size: 12px; font-size: 12px;

View File

@ -370,7 +370,7 @@ a {
padding-right: 20px; padding-right: 20px;
margin-right: 20px; margin-right: 20px;
border-right: 1px solid #ebebeb; // border-right: 1px solid #ebebeb;
} }
height: 68px; height: 68px;
@ -513,6 +513,18 @@ a {
color: #ff0000; color: #ff0000;
} }
} }
.recommend {
font-size: 12px;
color: #72DB86;
text-align: center;
width: 58px;
height: 21px;
background-color: rgba(114, 219, 134, 0.117647);
padding: 0 5px;
border-radius: 5px;
margin-right: 10px;
}
} }
.answer { .answer {
@ -526,6 +538,11 @@ a {
em { em {
color: #ff0000; color: #ff0000;
} }
.halving-line {
margin: 0 10px;
color:#D7D7D7;
}
} }
.bottom { .bottom {

View File

@ -1,6 +1,8 @@
// https://nuxt.com/docs/api/configuration/nuxt-config // https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({ export default defineNuxtConfig({
ssr: true, ssr: true,
components: true,
buildModules: ['@nuxtjs/composition-api/module'],
env: { env: {
baseUrl: process.env.BASE_URL || "http://localhost:3000", baseUrl: process.env.BASE_URL || "http://localhost:3000",
}, },

53
package-lock.json generated
View File

@ -7,7 +7,8 @@
"name": "nuxt-app", "name": "nuxt-app",
"hasInstallScript": true, "hasInstallScript": true,
"dependencies": { "dependencies": {
"axios": "^1.6.2" "axios": "^1.6.2",
"vuex": "^4.1.0"
}, },
"devDependencies": { "devDependencies": {
"@nuxt/devtools": "latest", "@nuxt/devtools": "latest",
@ -519,7 +520,6 @@
"version": "7.23.5", "version": "7.23.5",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz",
"integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==",
"dev": true,
"bin": { "bin": {
"parser": "bin/babel-parser.js" "parser": "bin/babel-parser.js"
}, },
@ -1223,8 +1223,7 @@
"node_modules/@jridgewell/sourcemap-codec": { "node_modules/@jridgewell/sourcemap-codec": {
"version": "1.4.15", "version": "1.4.15",
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
"dev": true
}, },
"node_modules/@jridgewell/trace-mapping": { "node_modules/@jridgewell/trace-mapping": {
"version": "0.3.20", "version": "0.3.20",
@ -3149,7 +3148,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.9.tgz",
"integrity": "sha512-+/Lf68Vr/nFBA6ol4xOtJrW+BQWv3QWKfRwGSm70jtXwfhZNF4R/eRgyVJYoxFRhdCTk/F6g99BP0ffPgZihfQ==", "integrity": "sha512-+/Lf68Vr/nFBA6ol4xOtJrW+BQWv3QWKfRwGSm70jtXwfhZNF4R/eRgyVJYoxFRhdCTk/F6g99BP0ffPgZihfQ==",
"dev": true,
"dependencies": { "dependencies": {
"@babel/parser": "^7.23.3", "@babel/parser": "^7.23.3",
"@vue/shared": "3.3.9", "@vue/shared": "3.3.9",
@ -3160,14 +3158,12 @@
"node_modules/@vue/compiler-core/node_modules/estree-walker": { "node_modules/@vue/compiler-core/node_modules/estree-walker": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
"dev": true
}, },
"node_modules/@vue/compiler-dom": { "node_modules/@vue/compiler-dom": {
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.9.tgz",
"integrity": "sha512-nfWubTtLXuT4iBeDSZ5J3m218MjOy42Vp2pmKVuBKo2/BLcrFUX8nCSr/bKRFiJ32R8qbdnnnBgRn9AdU5v0Sg==", "integrity": "sha512-nfWubTtLXuT4iBeDSZ5J3m218MjOy42Vp2pmKVuBKo2/BLcrFUX8nCSr/bKRFiJ32R8qbdnnnBgRn9AdU5v0Sg==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/compiler-core": "3.3.9", "@vue/compiler-core": "3.3.9",
"@vue/shared": "3.3.9" "@vue/shared": "3.3.9"
@ -3177,7 +3173,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.9.tgz",
"integrity": "sha512-wy0CNc8z4ihoDzjASCOCsQuzW0A/HP27+0MDSSICMjVIFzk/rFViezkR3dzH+miS2NDEz8ywMdbjO5ylhOLI2A==", "integrity": "sha512-wy0CNc8z4ihoDzjASCOCsQuzW0A/HP27+0MDSSICMjVIFzk/rFViezkR3dzH+miS2NDEz8ywMdbjO5ylhOLI2A==",
"dev": true,
"dependencies": { "dependencies": {
"@babel/parser": "^7.23.3", "@babel/parser": "^7.23.3",
"@vue/compiler-core": "3.3.9", "@vue/compiler-core": "3.3.9",
@ -3194,14 +3189,12 @@
"node_modules/@vue/compiler-sfc/node_modules/estree-walker": { "node_modules/@vue/compiler-sfc/node_modules/estree-walker": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
"dev": true
}, },
"node_modules/@vue/compiler-ssr": { "node_modules/@vue/compiler-ssr": {
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.9.tgz",
"integrity": "sha512-NO5oobAw78R0G4SODY5A502MGnDNiDjf6qvhn7zD7TJGc8XDeIEw4fg6JU705jZ/YhuokBKz0A5a/FL/XZU73g==", "integrity": "sha512-NO5oobAw78R0G4SODY5A502MGnDNiDjf6qvhn7zD7TJGc8XDeIEw4fg6JU705jZ/YhuokBKz0A5a/FL/XZU73g==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/compiler-dom": "3.3.9", "@vue/compiler-dom": "3.3.9",
"@vue/shared": "3.3.9" "@vue/shared": "3.3.9"
@ -3210,14 +3203,12 @@
"node_modules/@vue/devtools-api": { "node_modules/@vue/devtools-api": {
"version": "6.5.1", "version": "6.5.1",
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz",
"integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==", "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA=="
"dev": true
}, },
"node_modules/@vue/reactivity": { "node_modules/@vue/reactivity": {
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.9.tgz",
"integrity": "sha512-VmpIqlNp+aYDg2X0xQhJqHx9YguOmz2UxuUJDckBdQCNkipJvfk9yA75woLWElCa0Jtyec3lAAt49GO0izsphw==", "integrity": "sha512-VmpIqlNp+aYDg2X0xQhJqHx9YguOmz2UxuUJDckBdQCNkipJvfk9yA75woLWElCa0Jtyec3lAAt49GO0izsphw==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/shared": "3.3.9" "@vue/shared": "3.3.9"
} }
@ -3226,7 +3217,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.9.tgz",
"integrity": "sha512-HnUFm7Ry6dFa4Lp63DAxTixUp8opMtQr6RxQCpDI1vlh12rkGIeYqMvJtK+IKyEfEOa2I9oCkD1mmsPdaGpdVg==", "integrity": "sha512-HnUFm7Ry6dFa4Lp63DAxTixUp8opMtQr6RxQCpDI1vlh12rkGIeYqMvJtK+IKyEfEOa2I9oCkD1mmsPdaGpdVg==",
"dev": true,
"dependencies": { "dependencies": {
"@babel/parser": "^7.23.3", "@babel/parser": "^7.23.3",
"@vue/compiler-core": "3.3.9", "@vue/compiler-core": "3.3.9",
@ -3238,14 +3228,12 @@
"node_modules/@vue/reactivity-transform/node_modules/estree-walker": { "node_modules/@vue/reactivity-transform/node_modules/estree-walker": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
"dev": true
}, },
"node_modules/@vue/runtime-core": { "node_modules/@vue/runtime-core": {
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.9.tgz",
"integrity": "sha512-xxaG9KvPm3GTRuM4ZyU8Tc+pMVzcu6eeoSRQJ9IE7NmCcClW6z4B3Ij6L4EDl80sxe/arTtQ6YmgiO4UZqRc+w==", "integrity": "sha512-xxaG9KvPm3GTRuM4ZyU8Tc+pMVzcu6eeoSRQJ9IE7NmCcClW6z4B3Ij6L4EDl80sxe/arTtQ6YmgiO4UZqRc+w==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/reactivity": "3.3.9", "@vue/reactivity": "3.3.9",
"@vue/shared": "3.3.9" "@vue/shared": "3.3.9"
@ -3255,7 +3243,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.9.tgz",
"integrity": "sha512-e7LIfcxYSWbV6BK1wQv9qJyxprC75EvSqF/kQKe6bdZEDNValzeRXEVgiX7AHI6hZ59HA4h7WT5CGvm69vzJTQ==", "integrity": "sha512-e7LIfcxYSWbV6BK1wQv9qJyxprC75EvSqF/kQKe6bdZEDNValzeRXEVgiX7AHI6hZ59HA4h7WT5CGvm69vzJTQ==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/runtime-core": "3.3.9", "@vue/runtime-core": "3.3.9",
"@vue/shared": "3.3.9", "@vue/shared": "3.3.9",
@ -3266,7 +3253,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.9.tgz",
"integrity": "sha512-w0zT/s5l3Oa3ZjtLW88eO4uV6AQFqU8X5GOgzq7SkQQu6vVr+8tfm+OI2kDBplS/W/XgCBuFXiPw6T5EdwXP0A==", "integrity": "sha512-w0zT/s5l3Oa3ZjtLW88eO4uV6AQFqU8X5GOgzq7SkQQu6vVr+8tfm+OI2kDBplS/W/XgCBuFXiPw6T5EdwXP0A==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/compiler-ssr": "3.3.9", "@vue/compiler-ssr": "3.3.9",
"@vue/shared": "3.3.9" "@vue/shared": "3.3.9"
@ -3278,8 +3264,7 @@
"node_modules/@vue/shared": { "node_modules/@vue/shared": {
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.9.tgz", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.9.tgz",
"integrity": "sha512-ZE0VTIR0LmYgeyhurPTpy4KzKsuDyQbMSdM49eKkMnT5X4VfFBLysMzjIZhLEFQYjjOVVfbvUDHckwjDFiO2eA==", "integrity": "sha512-ZE0VTIR0LmYgeyhurPTpy4KzKsuDyQbMSdM49eKkMnT5X4VfFBLysMzjIZhLEFQYjjOVVfbvUDHckwjDFiO2eA=="
"dev": true
}, },
"node_modules/abbrev": { "node_modules/abbrev": {
"version": "1.1.1", "version": "1.1.1",
@ -4515,8 +4500,7 @@
"node_modules/csstype": { "node_modules/csstype": {
"version": "3.1.2", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
"dev": true
}, },
"node_modules/debug": { "node_modules/debug": {
"version": "4.3.4", "version": "4.3.4",
@ -6256,7 +6240,6 @@
"version": "0.30.5", "version": "0.30.5",
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz",
"integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==",
"dev": true,
"dependencies": { "dependencies": {
"@jridgewell/sourcemap-codec": "^1.4.15" "@jridgewell/sourcemap-codec": "^1.4.15"
}, },
@ -7593,8 +7576,7 @@
"node_modules/picocolors": { "node_modules/picocolors": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
"dev": true
}, },
"node_modules/picomatch": { "node_modules/picomatch": {
"version": "2.3.1", "version": "2.3.1",
@ -7623,7 +7605,6 @@
"version": "8.4.32", "version": "8.4.32",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz",
"integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==",
"dev": true,
"funding": [ "funding": [
{ {
"type": "opencollective", "type": "opencollective",
@ -8077,7 +8058,6 @@
"version": "3.3.7", "version": "3.3.7",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
"dev": true,
"funding": [ "funding": [
{ {
"type": "github", "type": "github",
@ -8996,7 +8976,6 @@
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"dev": true,
"engines": { "engines": {
"node": ">=0.10.0" "node": ">=0.10.0"
} }
@ -10729,7 +10708,6 @@
"version": "3.3.9", "version": "3.3.9",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.3.9.tgz", "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.9.tgz",
"integrity": "sha512-sy5sLCTR8m6tvUk1/ijri3Yqzgpdsmxgj6n6yl7GXXCXqVbmW2RCXe9atE4cEI6Iv7L89v5f35fZRRr5dChP9w==", "integrity": "sha512-sy5sLCTR8m6tvUk1/ijri3Yqzgpdsmxgj6n6yl7GXXCXqVbmW2RCXe9atE4cEI6Iv7L89v5f35fZRRr5dChP9w==",
"dev": true,
"dependencies": { "dependencies": {
"@vue/compiler-dom": "3.3.9", "@vue/compiler-dom": "3.3.9",
"@vue/compiler-sfc": "3.3.9", "@vue/compiler-sfc": "3.3.9",
@ -10776,6 +10754,17 @@
"vue": "^3.2.0" "vue": "^3.2.0"
} }
}, },
"node_modules/vuex": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/vuex/-/vuex-4.1.0.tgz",
"integrity": "sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ==",
"dependencies": {
"@vue/devtools-api": "^6.0.0-beta.11"
},
"peerDependencies": {
"vue": "^3.2.0"
}
},
"node_modules/webidl-conversions": { "node_modules/webidl-conversions": {
"version": "3.0.1", "version": "3.0.1",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",

View File

@ -18,6 +18,7 @@
"vue-router": "^4.2.5" "vue-router": "^4.2.5"
}, },
"dependencies": { "dependencies": {
"axios": "^1.6.2" "axios": "^1.6.2",
"vuex": "^4.1.0"
} }
} }

15
store/index.js Normal file
View File

@ -0,0 +1,15 @@
// store/index.js
export const state = () => ({
list: [],
info: {},
})
export const mutations = {
// updateList(state, data) {
// state.list = data
// },
updateInfo(state, data) {
// console.log("state",);
state.info = data
},
}