feat: 🚀 發佈

This commit is contained in:
2025-07-09 09:51:15 +08:00
parent 7c411e4a49
commit 071cef318f
12 changed files with 131 additions and 165 deletions

View File

@@ -78,7 +78,7 @@
"meta": { "meta": {
"icon": "", "icon": "",
"zhTitle": "产品分类接口", "zhTitle": "产品分类接口",
"enTitle":"Product class List API", "enTitle":"Product Class API",
"isKeepAlive": true, "isKeepAlive": true,
"isAffix":true "isAffix":true
} }
@@ -140,7 +140,7 @@
"meta": { "meta": {
"icon": "", "icon": "",
"zhTitle": "新闻分类接口", "zhTitle": "新闻分类接口",
"enTitle":"news class List API", "enTitle":"News Class List API",
"isKeepAlive": true, "isKeepAlive": true,
"isAffix":true "isAffix":true
} }

View File

@@ -1,11 +1,12 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/authorize</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/authorize</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div> <!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -30,6 +31,7 @@ const PARAMS_DATA: any = {
1: ZH_DATA, 1: ZH_DATA,
2: EN_DATA 2: EN_DATA
}; };
const title = ref("基础API");
const TEXTAREA_TITLES: any = { const TEXTAREA_TITLES: any = {
1: "请求示例", 1: "请求示例",
2: "Request Example" 2: "Request Example"
@@ -83,6 +85,8 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "基础API" : "Base API";
console.log(newVal, "===========>>>>");
}, },
{ {
immediate: true, immediate: true,
@@ -91,4 +95,4 @@ watch(
); );
</script> </script>
<style scoped></style> <style scoped lang="scss"></style>

View File

@@ -12,9 +12,8 @@ export const RETURN_VALUE = {
id: 10, id: 10,
pid: 5, pid: 5,
name: "初次使用", name: "初次使用",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/f9337c05ea42bba312c779473750546d.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/f9337c05ea42bba312c779473750546d.png",
desc: null,
sort: 1, sort: 1,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -24,9 +23,7 @@ export const RETURN_VALUE = {
id: 2, id: 2,
pid: 1, pid: 1,
name: "新闻热点", name: "新闻热点",
short_name: null,
icon: null,
desc: null,
sort: 1, sort: 1,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -36,9 +33,7 @@ export const RETURN_VALUE = {
id: 1, id: 1,
pid: 0, pid: 0,
name: "品牌动态", name: "品牌动态",
short_name: null,
icon: null,
desc: null,
sort: 1, sort: 1,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -48,9 +43,9 @@ export const RETURN_VALUE = {
id: 11, id: 11,
pid: 5, pid: 5,
name: "存储管理", name: "存储管理",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/c2fbb88e15410dd490100c651e93ff6e.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/c2fbb88e15410dd490100c651e93ff6e.png",
desc: null,
sort: 2, sort: 2,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -60,9 +55,7 @@ export const RETURN_VALUE = {
id: 3, id: 3,
pid: 1, pid: 1,
name: "产品评测", name: "产品评测",
short_name: null,
icon: null,
desc: null,
sort: 2, sort: 2,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -72,9 +65,9 @@ export const RETURN_VALUE = {
id: 12, id: 12,
pid: 5, pid: 5,
name: "网络设置", name: "网络设置",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/3945d6e1e57a95d90918beeb2a8d0f39.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/3945d6e1e57a95d90918beeb2a8d0f39.png",
desc: null,
sort: 3, sort: 3,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -84,9 +77,7 @@ export const RETURN_VALUE = {
id: 4, id: 4,
pid: 1, pid: 1,
name: "博客", name: "博客",
short_name: null,
icon: null,
desc: null,
sort: 3, sort: 3,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -96,9 +87,9 @@ export const RETURN_VALUE = {
id: 13, id: 13,
pid: 5, pid: 5,
name: "文件管理", name: "文件管理",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/bbf9270ab5ed7579312856fd01c8d97a.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/bbf9270ab5ed7579312856fd01c8d97a.png",
desc: null,
sort: 4, sort: 4,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -108,9 +99,7 @@ export const RETURN_VALUE = {
id: 5, id: 5,
pid: 0, pid: 0,
name: "帮助中心", name: "帮助中心",
short_name: null,
icon: null,
desc: null,
sort: 4, sort: 4,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -120,9 +109,9 @@ export const RETURN_VALUE = {
id: 14, id: 14,
pid: 5, pid: 5,
name: "影视管理", name: "影视管理",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/f180790da3e94f97af840b3acd3f87ff.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/f180790da3e94f97af840b3acd3f87ff.png",
desc: null,
sort: 5, sort: 5,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -132,9 +121,9 @@ export const RETURN_VALUE = {
id: 15, id: 15,
pid: 5, pid: 5,
name: "相册管理", name: "相册管理",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/c1ac147f0d84e83bf3c739ec88a7e72b.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/c1ac147f0d84e83bf3c739ec88a7e72b.png",
desc: null,
sort: 6, sort: 6,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -144,9 +133,9 @@ export const RETURN_VALUE = {
id: 16, id: 16,
pid: 5, pid: 5,
name: "系统管理", name: "系统管理",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/0d870c4c2da82cac18b0935e9739bac9.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/0d870c4c2da82cac18b0935e9739bac9.png",
desc: null,
sort: 7, sort: 7,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -156,9 +145,9 @@ export const RETURN_VALUE = {
id: 17, id: 17,
pid: 5, pid: 5,
name: "更多", name: "更多",
short_name: null,
icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/ea84add2d16c5049a6fa5d182300254c.png", icon: "https://dev.ow.f2b211.com/storage/images/article/20250430/ea84add2d16c5049a6fa5d182300254c.png",
desc: null,
sort: 8, sort: 8,
level: 1, level: 1,
is_show: 1, is_show: 1,

View File

@@ -1,11 +1,12 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/article/categories</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/article/categories</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div> <!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -61,6 +62,7 @@ let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2));
let queryTextareaTitle = ref("请求示例"); let queryTextareaTitle = ref("请求示例");
let returnTextareaTitle = ref("响应示例"); let returnTextareaTitle = ref("响应示例");
let paramsValue = ref("公共参数"); let paramsValue = ref("公共参数");
let title = ref("");
watch( watch(
() => userStore.languageValue, () => userStore.languageValue,
newVal => { newVal => {
@@ -68,6 +70,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "新闻分类API" : "News Class API";
}, },
{ {
immediate: true, immediate: true,

View File

@@ -1,11 +1,17 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <!-- <div>
<h1>/article/{id}</h1> <h1>/article/{id}</h1>
</div> -->
<div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<div style="font-size: 32px; font-weight: 900; color: #000000">/article/{id}</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div>
<!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -58,6 +64,7 @@ let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2));
let queryTextareaTitle = ref("请求示例"); let queryTextareaTitle = ref("请求示例");
let returnTextareaTitle = ref("响应示例"); let returnTextareaTitle = ref("响应示例");
let paramsValue = ref("公共参数"); let paramsValue = ref("公共参数");
let title = ref("");
watch( watch(
() => userStore.languageValue, () => userStore.languageValue,
newVal => { newVal => {
@@ -65,6 +72,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "新闻详情API" : "News Details API";
}, },
{ {
immediate: true, immediate: true,

View File

@@ -1,11 +1,12 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/articles</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/articles</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div> <!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -57,6 +58,7 @@ let queryTextareaValue = ref(
2 2
) )
); );
let title = ref("");
let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2)); let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2));
let queryTextareaTitle = ref("请求示例"); let queryTextareaTitle = ref("请求示例");
let returnTextareaTitle = ref("响应示例"); let returnTextareaTitle = ref("响应示例");
@@ -68,6 +70,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "新闻列表API" : "News List API";
}, },
{ {
immediate: true, immediate: true,

View File

@@ -13,8 +13,7 @@ export const RETURN_VALUE = {
pid: 0, pid: 0,
path: "", path: "",
name: "数据存储", name: "数据存储",
icon: "",
desc: "",
sort: 1, sort: 1,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -25,8 +24,7 @@ export const RETURN_VALUE = {
pid: 0, pid: 0,
path: "", path: "",
name: "智慧存储", name: "智慧存储",
icon: "",
desc: "",
sort: 2, sort: 2,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -37,8 +35,7 @@ export const RETURN_VALUE = {
pid: 0, pid: 0,
path: "", path: "",
name: "智能家居", name: "智能家居",
icon: "",
desc: "",
sort: 3, sort: 3,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -49,8 +46,7 @@ export const RETURN_VALUE = {
pid: 0, pid: 0,
path: "", path: "",
name: "3C配件", name: "3C配件",
icon: "",
desc: "",
sort: 999, sort: 999,
level: 1, level: 1,
is_show: 1, is_show: 1,
@@ -61,8 +57,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "固态硬盘", name: "固态硬盘",
icon: "",
desc: "",
sort: 1, sort: 1,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -73,8 +68,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "移动硬盘", name: "移动硬盘",
icon: "",
desc: "",
sort: 2, sort: 2,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -85,8 +79,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "U盘/闪存卡", name: "U盘/闪存卡",
icon: "",
desc: "",
sort: 5, sort: 5,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -97,8 +90,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "混合存储", name: "混合存储",
icon: "",
desc: "",
sort: 6, sort: 6,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -109,8 +101,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "网络附加存储 NAS", name: "网络附加存储 NAS",
icon: "",
desc: "",
sort: 4, sort: 4,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -121,8 +112,7 @@ export const RETURN_VALUE = {
pid: 1, pid: 1,
path: "1", path: "1",
name: "DAS", name: "DAS",
icon: "",
desc: "",
sort: 7, sort: 7,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -133,8 +123,7 @@ export const RETURN_VALUE = {
pid: 2, pid: 2,
path: "2", path: "2",
name: "AI NAS", name: "AI NAS",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -145,8 +134,7 @@ export const RETURN_VALUE = {
pid: 2, pid: 2,
path: "2", path: "2",
name: "AI PC", name: "AI PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -157,8 +145,7 @@ export const RETURN_VALUE = {
pid: 2, pid: 2,
path: "2", path: "2",
name: "家庭多媒体智慧存储", name: "家庭多媒体智慧存储",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -169,8 +156,7 @@ export const RETURN_VALUE = {
pid: 2, pid: 2,
path: "2", path: "2",
name: "视频剪辑存储电脑", name: "视频剪辑存储电脑",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -181,8 +167,7 @@ export const RETURN_VALUE = {
pid: 3, pid: 3,
path: "3", path: "3",
name: "智能桌面", name: "智能桌面",
icon: "",
desc: "",
sort: 16, sort: 16,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -193,8 +178,7 @@ export const RETURN_VALUE = {
pid: 3, pid: 3,
path: "3", path: "3",
name: "智能电脑桌", name: "智能电脑桌",
icon: "",
desc: "",
sort: 17, sort: 17,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -205,8 +189,7 @@ export const RETURN_VALUE = {
pid: 3, pid: 3,
path: "3", path: "3",
name: "智能充电", name: "智能充电",
icon: "",
desc: "",
sort: 18, sort: 18,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -217,8 +200,7 @@ export const RETURN_VALUE = {
pid: 3, pid: 3,
path: "3", path: "3",
name: "插排", name: "插排",
icon: "",
desc: "",
sort: 15, sort: 15,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -229,8 +211,7 @@ export const RETURN_VALUE = {
pid: 4, pid: 4,
path: "4", path: "4",
name: "硬盘盒", name: "硬盘盒",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -241,8 +222,7 @@ export const RETURN_VALUE = {
pid: 4, pid: 4,
path: "4", path: "4",
name: "硬盘座", name: "硬盘座",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -253,8 +233,7 @@ export const RETURN_VALUE = {
pid: 4, pid: 4,
path: "4", path: "4",
name: "HUB/扩展坞", name: "HUB/扩展坞",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -265,8 +244,7 @@ export const RETURN_VALUE = {
pid: 4, pid: 4,
path: "4", path: "4",
name: "线材", name: "线材",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -277,8 +255,7 @@ export const RETURN_VALUE = {
pid: 4, pid: 4,
path: "4", path: "4",
name: "其他配件", name: "其他配件",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 2, level: 2,
is_show: 1, is_show: 1,
@@ -289,8 +266,7 @@ export const RETURN_VALUE = {
pid: 5, pid: 5,
path: "1,5", path: "1,5",
name: "2.5寸SATA SSD", name: "2.5寸SATA SSD",
icon: "",
desc: "",
sort: 4, sort: 4,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -301,8 +277,7 @@ export const RETURN_VALUE = {
pid: 5, pid: 5,
path: "1,5", path: "1,5",
name: "M.2 NVMe SSD", name: "M.2 NVMe SSD",
icon: "",
desc: "",
sort: 1, sort: 1,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -313,8 +288,7 @@ export const RETURN_VALUE = {
pid: 5, pid: 5,
path: "1,5", path: "1,5",
name: "M.2 SATA SSD", name: "M.2 SATA SSD",
icon: "",
desc: "",
sort: 2, sort: 2,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -325,8 +299,7 @@ export const RETURN_VALUE = {
pid: 5, pid: 5,
path: "1,5", path: "1,5",
name: "mSATA SSD", name: "mSATA SSD",
icon: "",
desc: "",
sort: 3, sort: 3,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -337,8 +310,7 @@ export const RETURN_VALUE = {
pid: 6, pid: 6,
path: "1,6", path: "1,6",
name: "移动硬盘", name: "移动硬盘",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -349,8 +321,7 @@ export const RETURN_VALUE = {
pid: 7, pid: 7,
path: "1,7", path: "1,7",
name: "U盘", name: "U盘",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -361,8 +332,7 @@ export const RETURN_VALUE = {
pid: 7, pid: 7,
path: "1,7", path: "1,7",
name: "TF卡", name: "TF卡",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -373,8 +343,7 @@ export const RETURN_VALUE = {
pid: 8, pid: 8,
path: "1,8", path: "1,8",
name: "混合存储", name: "混合存储",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -385,8 +354,7 @@ export const RETURN_VALUE = {
pid: 9, pid: 9,
path: "1,9", path: "1,9",
name: "个人私有云", name: "个人私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -397,8 +365,7 @@ export const RETURN_VALUE = {
pid: 9, pid: 9,
path: "1,9", path: "1,9",
name: "家庭私有云", name: "家庭私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -409,8 +376,7 @@ export const RETURN_VALUE = {
pid: 9, pid: 9,
path: "1,9", path: "1,9",
name: "团队私有云", name: "团队私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -421,8 +387,7 @@ export const RETURN_VALUE = {
pid: 9, pid: 9,
path: "1,9", path: "1,9",
name: "内容创作者私有云", name: "内容创作者私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -433,8 +398,7 @@ export const RETURN_VALUE = {
pid: 9, pid: 9,
path: "1,9", path: "1,9",
name: "企业私有云", name: "企业私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -445,8 +409,7 @@ export const RETURN_VALUE = {
pid: 10, pid: 10,
path: "1,10", path: "1,10",
name: "DAS", name: "DAS",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -457,8 +420,7 @@ export const RETURN_VALUE = {
pid: 11, pid: 11,
path: "2,11", path: "2,11",
name: "个人AI私有云", name: "个人AI私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -469,8 +431,7 @@ export const RETURN_VALUE = {
pid: 11, pid: 11,
path: "2,11", path: "2,11",
name: "企业AI私有云", name: "企业AI私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -481,8 +442,7 @@ export const RETURN_VALUE = {
pid: 12, pid: 12,
path: "2,12", path: "2,12",
name: "AI PC", name: "AI PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -493,8 +453,7 @@ export const RETURN_VALUE = {
pid: 13, pid: 13,
path: "2,13", path: "2,13",
name: "家庭影音私有云", name: "家庭影音私有云",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -505,8 +464,7 @@ export const RETURN_VALUE = {
pid: 13, pid: 13,
path: "2,13", path: "2,13",
name: "家庭影音PC", name: "家庭影音PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -517,8 +475,7 @@ export const RETURN_VALUE = {
pid: 14, pid: 14,
path: "2,14", path: "2,14",
name: "个人级PC", name: "个人级PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -529,8 +486,7 @@ export const RETURN_VALUE = {
pid: 14, pid: 14,
path: "2,14", path: "2,14",
name: "专业级PC", name: "专业级PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -541,8 +497,7 @@ export const RETURN_VALUE = {
pid: 14, pid: 14,
path: "2,14", path: "2,14",
name: "企业级PC", name: "企业级PC",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -553,8 +508,7 @@ export const RETURN_VALUE = {
pid: 15, pid: 15,
path: "3,15", path: "3,15",
name: "扩展支架", name: "扩展支架",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -565,8 +519,7 @@ export const RETURN_VALUE = {
pid: 16, pid: 16,
path: "3,16", path: "3,16",
name: "智能电脑桌", name: "智能电脑桌",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -577,8 +530,7 @@ export const RETURN_VALUE = {
pid: 17, pid: 17,
path: "3,17", path: "3,17",
name: "PD充电器", name: "PD充电器",
icon: "",
desc: "",
sort: 3, sort: 3,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -589,8 +541,7 @@ export const RETURN_VALUE = {
pid: 17, pid: 17,
path: "3,17", path: "3,17",
name: "USB充电器", name: "USB充电器",
icon: "",
desc: "",
sort: 4, sort: 4,
level: 3, level: 3,
is_show: 1, is_show: 1,
@@ -601,8 +552,7 @@ export const RETURN_VALUE = {
pid: 17, pid: 17,
path: "3,17", path: "3,17",
name: "车载充电器", name: "车载充电器",
icon: "",
desc: "",
sort: 0, sort: 0,
level: 3, level: 3,
is_show: 1, is_show: 1,

View File

@@ -1,11 +1,13 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/product/categories</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/product/categories</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div>
<!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -43,7 +45,7 @@ const PARAMS_VALUE: any = {
1: "公共参数", 1: "公共参数",
2: "Common parameters" 2: "Common parameters"
}; };
let title = ref("");
let tableData = ref(ZH_DATA); let tableData = ref(ZH_DATA);
let queryTextareaValue = ref( let queryTextareaValue = ref(
JSON.stringify( JSON.stringify(
@@ -68,6 +70,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "产品分类API" : "Product Class API";
}, },
{ {
immediate: true, immediate: true,

View File

@@ -15,7 +15,7 @@ export const RETURN_VALUE = {
is_new: 0, is_new: 0,
is_hot: 0, is_hot: 0,
is_show: 1, is_show: 1,
sort: 0,
detail: '<div class="seo-pro">\r\n\t<h3>\r\n\t\tOrico USB3.0 2.5英寸硬盘易驱线\r\n\t</h3>\r\n\t<p>\r\n\t\t高速传输就是要快\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/e27095e40a1c2c8656a3bdbd90b6b7c0.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t简约风格灵越之作\r\n\t</h3>\r\n\t<p>\r\n\t\t简约外观设计表面纹面工艺处理大气\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/4519eab0dd7604b3ca3d368feb208eb6.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\tOTG功能手机/平板也可以连硬盘\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/eed723ee811ed2e645bcd16f9d9bb7a7.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t6Gbps急速支持UASP协议\r\n\t</h3>\r\n\t<p>\r\n\t\t配合高速SSD固态硬盘传输速度可达500M/S传输一部1GB的高清电影仅需2秒。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3ca27e13da86c0fd1f94c99b54cc1c61.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t露天式结构解决散热问题\r\n\t</h3>\r\n\t<p>\r\n\t\t360度散热设计使硬盘散热更畅快\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/6b155628758caf3fc9357ed65a628b3c.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t免工具免驱动即插即用\r\n\t</h3>\r\n\t<p>\r\n\t\t免工具拆装硬盘2秒更换硬盘支持热插拔\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/c0bb2558b29b3f4fac13bc5be853faab.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t成为您的移动资料库让旧硬盘焕发新生\r\n\t</h3>\r\n\t<p>\r\n\t\t只要您是2.5英寸SATA串口硬盘配合ORICO易驱线使用便能成为您的移动资料库。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/ebff6c0b1fd53757b0c12d74f2df4a59.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t让您存储无忧\r\n\t</h3>\r\n\t<p>\r\n\t\t急速传输智能存储数据保护\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3e303ce0dfb43b665e0402b1201a265c.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t迷你便携设计仅火柴盒大小\r\n\t</h3>\r\n\t<p>\r\n\t\t迷你尺寸不占地方小巧方便携带使用简单。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3ac75fe47ed33655c3c28343afd48295.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t品质与工艺的双重结合\r\n\t</h3>\r\n\t<p>\r\n\t\t采用ABS工程材料精心打造拥有很好的抗氧化性、耐腐蚀性使用长久。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/63acfe180b5f15473f270b2bebc6d012.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t真海量存储\r\n\t</h3>\r\n\t<p>\r\n\t\t支持2TB硬盘海量存储游戏/数据无忧存,无虑取。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/4a64ccae66f40c02eecb6a809159383e.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t广泛兼容适用诸多设备\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/846227a8e7369cd1fc12e7cbbb681ee0.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t多重安全模块\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/963a1109da8d04f85c086f2618a5ecbd.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t2.5英寸硬盘易驱线细节展示\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/debdbf144393d59358620561ecc19f1a.jpg" alt="" /><br />\r\n<span>标签:<a href="https://www.orico.com.cn/search.html?skeyword=%E4%BE%BF%E6%90%BA%E5%BC%8F%E6%98%93%E9%A9%B1%E7%BA%BF">便携式易驱线</a></span> \r\n</div>', detail: '<div class="seo-pro">\r\n\t<h3>\r\n\t\tOrico USB3.0 2.5英寸硬盘易驱线\r\n\t</h3>\r\n\t<p>\r\n\t\t高速传输就是要快\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/e27095e40a1c2c8656a3bdbd90b6b7c0.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t简约风格灵越之作\r\n\t</h3>\r\n\t<p>\r\n\t\t简约外观设计表面纹面工艺处理大气\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/4519eab0dd7604b3ca3d368feb208eb6.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\tOTG功能手机/平板也可以连硬盘\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/eed723ee811ed2e645bcd16f9d9bb7a7.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t6Gbps急速支持UASP协议\r\n\t</h3>\r\n\t<p>\r\n\t\t配合高速SSD固态硬盘传输速度可达500M/S传输一部1GB的高清电影仅需2秒。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3ca27e13da86c0fd1f94c99b54cc1c61.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t露天式结构解决散热问题\r\n\t</h3>\r\n\t<p>\r\n\t\t360度散热设计使硬盘散热更畅快\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/6b155628758caf3fc9357ed65a628b3c.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t免工具免驱动即插即用\r\n\t</h3>\r\n\t<p>\r\n\t\t免工具拆装硬盘2秒更换硬盘支持热插拔\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/c0bb2558b29b3f4fac13bc5be853faab.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t成为您的移动资料库让旧硬盘焕发新生\r\n\t</h3>\r\n\t<p>\r\n\t\t只要您是2.5英寸SATA串口硬盘配合ORICO易驱线使用便能成为您的移动资料库。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/ebff6c0b1fd53757b0c12d74f2df4a59.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t让您存储无忧\r\n\t</h3>\r\n\t<p>\r\n\t\t急速传输智能存储数据保护\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3e303ce0dfb43b665e0402b1201a265c.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t迷你便携设计仅火柴盒大小\r\n\t</h3>\r\n\t<p>\r\n\t\t迷你尺寸不占地方小巧方便携带使用简单。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/3ac75fe47ed33655c3c28343afd48295.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t品质与工艺的双重结合\r\n\t</h3>\r\n\t<p>\r\n\t\t采用ABS工程材料精心打造拥有很好的抗氧化性、耐腐蚀性使用长久。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/63acfe180b5f15473f270b2bebc6d012.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t真海量存储\r\n\t</h3>\r\n\t<p>\r\n\t\t支持2TB硬盘海量存储游戏/数据无忧存,无虑取。\r\n\t</p>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/4a64ccae66f40c02eecb6a809159383e.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t广泛兼容适用诸多设备\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/846227a8e7369cd1fc12e7cbbb681ee0.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t多重安全模块\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/963a1109da8d04f85c086f2618a5ecbd.jpg" alt="" /><br />\r\n\t<h3>\r\n\t\t2.5英寸硬盘易驱线细节展示\r\n\t</h3>\r\n<img src="https://dev.ow.f2b211.com/storage/images/unknown/20250509/debdbf144393d59358620561ecc19f1a.jpg" alt="" /><br />\r\n<span>标签:<a href="https://www.orico.com.cn/search.html?skeyword=%E4%BE%BF%E6%90%BA%E5%BC%8F%E6%98%93%E9%A9%B1%E7%BA%BF">便携式易驱线</a></span> \r\n</div>',
status: 1, status: 1,
category: { category: {
@@ -75,7 +75,7 @@ export const RETURN_VALUE = {
"https://dev.ow.f2b211.com/storage/images/product/20250509/6f12aa1db3658d23fc01c0e64e5bd697.jpg", "https://dev.ow.f2b211.com/storage/images/product/20250509/6f12aa1db3658d23fc01c0e64e5bd697.jpg",
"https://dev.ow.f2b211.com/storage/images/product/20250509/50d915d8e1d3cd27e766c5c2808b5fcd.jpg" "https://dev.ow.f2b211.com/storage/images/product/20250509/50d915d8e1d3cd27e766c5c2808b5fcd.jpg"
], ],
sort: 0,
sku_attr: [ sku_attr: [
{ {
attr_value: attr_value:

View File

@@ -1,11 +1,12 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/product/{id}</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/product/{id}</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div> <!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -58,6 +59,7 @@ let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2));
let queryTextareaTitle = ref("请求示例"); let queryTextareaTitle = ref("请求示例");
let returnTextareaTitle = ref("响应示例"); let returnTextareaTitle = ref("响应示例");
let paramsValue = ref("公共参数"); let paramsValue = ref("公共参数");
let title = ref("");
watch( watch(
() => userStore.languageValue, () => userStore.languageValue,
newVal => { newVal => {
@@ -65,6 +67,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "产品详情API" : "Product Details API";
}, },
{ {
immediate: true, immediate: true,

View File

@@ -14,7 +14,6 @@ export const RETURN_VALUE = {
name: "可充电锂电池", name: "可充电锂电池",
short_name: "", short_name: "",
cover_image: "", cover_image: "",
desc: "",
deleted_at: null, deleted_at: null,
category: { category: {
id: 168, id: 168,

View File

@@ -1,11 +1,12 @@
<template> <template>
<div class="card table-box"> <div class="card table-box">
<div> <div style="padding-bottom: 22px; border-bottom: 1px solid #eeeeee">
<h1>/products</h1> <div style="font-size: 32px; font-weight: 900; color: #000000">/products</div>
<div style="font-size: 16px; color: #606266">{{ title }}</div>
</div> </div>
<div> <!-- <div>
<h4>{{ paramsValue }}</h4> <h4>{{ paramsValue }}</h4>
</div> </div> -->
<template v-for="(item, index) in tableData" :key="index"> <template v-for="(item, index) in tableData" :key="index">
<MyTable :title="item.title" :columns="item.columns" :tableData="item.data" /> <MyTable :title="item.title" :columns="item.columns" :tableData="item.data" />
</template> </template>
@@ -45,6 +46,7 @@ const PARAMS_VALUE: any = {
}; };
let tableData = ref(ZH_DATA); let tableData = ref(ZH_DATA);
let title = ref("产品列表");
let queryTextareaValue = ref( let queryTextareaValue = ref(
JSON.stringify( JSON.stringify(
{ {
@@ -61,6 +63,7 @@ let returnTextareaTitleValue = ref(JSON.stringify(RETURN_VALUE, null, 2));
let queryTextareaTitle = ref("请求示例"); let queryTextareaTitle = ref("请求示例");
let returnTextareaTitle = ref("响应示例"); let returnTextareaTitle = ref("响应示例");
let paramsValue = ref("公共参数"); let paramsValue = ref("公共参数");
watch( watch(
() => userStore.languageValue, () => userStore.languageValue,
newVal => { newVal => {
@@ -68,6 +71,7 @@ watch(
queryTextareaTitle.value = TEXTAREA_TITLES[newVal]; queryTextareaTitle.value = TEXTAREA_TITLES[newVal];
returnTextareaTitle.value = TEXTAREA_TITLES1[newVal]; returnTextareaTitle.value = TEXTAREA_TITLES1[newVal];
paramsValue.value = PARAMS_VALUE[newVal]; paramsValue.value = PARAMS_VALUE[newVal];
title.value = newVal === 1 ? "产品列表API" : "Product List API";
}, },
{ {
immediate: true, immediate: true,