feat:初始提交uni-app项目

This commit is contained in:
2026-01-14 18:19:33 +08:00
commit 0dcbd340e6
515 changed files with 38560 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_custom_nav_bar2 = common_vendor.resolveComponent("custom-nav-bar");
const _easycom_theme_item2 = common_vendor.resolveComponent("theme-item");
(_easycom_custom_nav_bar2 + _easycom_theme_item2)();
}
const _easycom_custom_nav_bar = () => "../../components/custom-nav-bar/custom-nav-bar.js";
const _easycom_theme_item = () => "../../components/theme-item/theme-item.js";
if (!Math) {
(_easycom_custom_nav_bar + _easycom_theme_item)();
}
const _sfc_main = {
__name: "classify",
setup(__props) {
const classifyList = common_vendor.ref([]);
const getClassify = async () => {
let res = await api_apis.apiGetClassify({
// select:true
pageSize: 15
});
classifyList.value = res.data;
};
getClassify();
common_vendor.onShareAppMessage((e) => {
return {
title: "hzb壁纸,精选分类",
path: "/pages/classfy/classfy"
};
});
common_vendor.onShareTimeline(() => {
return {
// 标题
title: "hzb壁纸,精选分类",
// 分享时候的图片地址。可以本地也可以网络图
imageUrl: "/static/images/logo2.jpg"
};
});
return (_ctx, _cache) => {
return {
a: common_vendor.p({
title: "分类"
}),
b: common_vendor.f(classifyList.value, (item, k0, i0) => {
return {
a: item._id,
b: "6bcfa975-1-" + i0,
c: common_vendor.p({
item
})
};
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-6bcfa975"]]);
_sfc_main.__runtimeHooks = 6;
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/classify/classify.js.map

View File

@@ -0,0 +1,9 @@
{
"navigationBarTitleText": "分类",
"enablePullDownRefresh": true,
"navigationStyle": "custom",
"usingComponents": {
"custom-nav-bar": "../../components/custom-nav-bar/custom-nav-bar",
"theme-item": "../../components/theme-item/theme-item"
}
}

View File

@@ -0,0 +1 @@
<view class="classLayout pageBg data-v-6bcfa975"><custom-nav-bar wx:if="{{a}}" class="data-v-6bcfa975" u-i="6bcfa975-0" bind:__l="__l" u-p="{{a}}"></custom-nav-bar><view class="classify data-v-6bcfa975"><theme-item wx:for="{{b}}" wx:for-item="item" wx:key="a" class="data-v-6bcfa975" u-i="{{item.b}}" bind:__l="__l" u-p="{{item.c}}"></theme-item></view></view>

View File

@@ -0,0 +1,31 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.classLayout .classify.data-v-6bcfa975 {
padding: 30rpx;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 15rpx;
}

View File

@@ -0,0 +1,115 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_uni_load_more2 = common_vendor.resolveComponent("uni-load-more");
_easycom_uni_load_more2();
}
const _easycom_uni_load_more = () => "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js";
if (!Math) {
_easycom_uni_load_more();
}
const _sfc_main = {
__name: "classlist",
setup(__props) {
const classList = common_vendor.ref([]);
const noData = common_vendor.ref(false);
const queryParams = {
pageNum: 1,
pageSize: 12
};
let pageName;
common_vendor.onLoad((e) => {
let { id = null, name = null, type = null } = e;
if (id) {
queryParams.id = id;
}
if (type) {
queryParams.type = type;
}
pageName = name;
common_vendor.index.setNavigationBarTitle({
title: name
});
getClassList();
});
common_vendor.onUnload(() => {
common_vendor.index.removeStorageSync("storgClassList");
});
common_vendor.onReachBottom(() => {
if (noData.value) {
return;
}
queryParams.pageNum++;
getClassList();
});
const getClassList = async () => {
let res;
if (queryParams.id) {
res = await api_apis.apiGetClassList({
// queryParams
classid: queryParams.id,
pageNum: queryParams.pageNum,
pageSize: queryParams.pageSize
// classid:"6524ace7213929cbcee72e4d"
});
}
if (queryParams.type) {
res = await api_apis.apiGetHistoryList({
// queryParams
type: queryParams.type,
pageNum: queryParams.pageNum,
pageSize: queryParams.pageSize
});
}
classList.value = [...classList.value, ...res.data];
if (queryParams.pageSize > res.data.length) {
noData.value = true;
}
common_vendor.index.setStorageSync("storgClassList", classList.value);
};
common_vendor.onShareAppMessage((e) => {
return {
title: "hzb壁纸-" + pageName,
// 必须传递id进去否则进不去内部页面
path: "/pages/classlist/classlist?id=" + queryParams.id + "&name=" + pageName
};
});
common_vendor.onShareTimeline(() => {
return {
// 标题
title: "hzb壁纸~~~",
// 分享时候的图片地址。可以本地也可以网络图
// imageUrl:"/static/images/logo2.jpg"
//要想看朋友圈这个需要带的query参数
query: "id=" + queryParams.id + "&name=" + pageName
};
});
return (_ctx, _cache) => {
return common_vendor.e({
a: !classList.value.length && !noData.value
}, !classList.value.length && !noData.value ? {
b: common_vendor.p({
status: "loading"
})
} : {}, {
c: common_vendor.f(classList.value, (item, k0, i0) => {
return {
a: item.smallPicurl,
b: "/pages/preview/preview?id=" + item._id,
c: item._id
};
}),
d: classList.value.length || noData.value
}, classList.value.length || noData.value ? {
e: common_vendor.p({
status: noData.value ? "noMore" : "loading"
})
} : {});
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-bd381383"]]);
_sfc_main.__runtimeHooks = 6;
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/classlist/classlist.js.map

View File

@@ -0,0 +1,6 @@
{
"navigationBarTitleText": "分类列表",
"usingComponents": {
"uni-load-more": "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more"
}
}

View File

@@ -0,0 +1 @@
<view class="classlist data-v-bd381383"><view wx:if="{{a}}" class="loadingLayout data-v-bd381383"><uni-load-more wx:if="{{b}}" class="data-v-bd381383" u-i="bd381383-0" bind:__l="__l" u-p="{{b}}"></uni-load-more></view><view class="content data-v-bd381383"><navigator wx:for="{{c}}" wx:for-item="item" wx:key="c" url="{{item.b}}" class="item data-v-bd381383"><image class="data-v-bd381383" src="{{item.a}}" mode="aspectFill"></image></navigator></view><view wx:if="{{d}}" class="loadingLayout bottom data-v-bd381383"><uni-load-more wx:if="{{e}}" class="data-v-bd381383" u-i="bd381383-1" bind:__l="__l" u-p="{{e}}"></uni-load-more></view><view class="safe-area-inset-bottom data-v-bd381383"></view></view>

View File

@@ -0,0 +1,39 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.classlist .content.data-v-bd381383 {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 5rpx;
padding: 5rpx;
}
.classlist .content .item.data-v-bd381383 {
height: 440rpx;
}
.classlist .content .item image.data-v-bd381383 {
width: 100%;
height: 100%;
display: block;
}

View File

@@ -0,0 +1,141 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_custom_nav_bar2 = common_vendor.resolveComponent("custom-nav-bar");
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
const _easycom_uni_dateformat2 = common_vendor.resolveComponent("uni-dateformat");
const _easycom_common_title2 = common_vendor.resolveComponent("common-title");
const _easycom_theme_item2 = common_vendor.resolveComponent("theme-item");
(_easycom_custom_nav_bar2 + _easycom_uni_icons2 + _easycom_uni_dateformat2 + _easycom_common_title2 + _easycom_theme_item2)();
}
const _easycom_custom_nav_bar = () => "../../components/custom-nav-bar/custom-nav-bar.js";
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
const _easycom_uni_dateformat = () => "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat.js";
const _easycom_common_title = () => "../../components/common-title/common-title.js";
const _easycom_theme_item = () => "../../components/theme-item/theme-item.js";
if (!Math) {
(_easycom_custom_nav_bar + _easycom_uni_icons + _easycom_uni_dateformat + _easycom_common_title + _easycom_theme_item)();
}
const _sfc_main = {
__name: "index",
setup(__props) {
const bannerList = common_vendor.ref([]);
const randomList = common_vendor.ref([]);
const noticeList = common_vendor.ref([]);
const classifyList = common_vendor.ref([]);
const getBanner = async () => {
let res = await api_apis.apiGetBanner();
bannerList.value = res.data;
};
const getDayRandom = async () => {
let res = await api_apis.apiGetDayRandom();
randomList.value = res.data;
};
const getNotice = async () => {
let res = await api_apis.apiGetNotice({ select: true });
noticeList.value = res.data;
};
const goPreview = (id) => {
common_vendor.index.setStorageSync("storgClassList", randomList.value);
common_vendor.index.navigateTo({
url: "/pages/preview/preview?id=" + id
});
};
const getClassify = async () => {
let res = await api_apis.apiGetClassify({
select: true
});
classifyList.value = res.data;
};
common_vendor.onShareAppMessage((e) => {
return {
title: "hzb壁纸",
path: "/pages/index/index"
};
});
common_vendor.onShareTimeline(() => {
return {
// 标题
title: "hzb壁纸~~~",
// 分享时候的图片地址。可以本地也可以网络图
imageUrl: "/static/images/logo2.jpg"
};
});
getBanner();
getDayRandom();
getNotice();
getClassify();
return (_ctx, _cache) => {
return {
a: common_vendor.p({
title: "推荐"
}),
b: common_vendor.f(bannerList.value, (item, k0, i0) => {
return common_vendor.e({
a: item.target == "miniProgram"
}, item.target == "miniProgram" ? {
b: item.picurl,
c: item.url,
d: item.appid
} : {
e: item.picurl,
f: `/pages/classlist/classlist?${item.url}`
}, {
g: item._id
});
}),
c: common_vendor.p({
type: "sound-filled",
size: "20",
color: "#28b389"
}),
d: common_vendor.f(noticeList.value, (item, k0, i0) => {
return {
a: common_vendor.t(item.title),
b: "/pages/notice/detail?id=" + item._id,
c: item._id
};
}),
e: common_vendor.p({
type: "forward",
size: "20",
color: "#28b389"
}),
f: common_vendor.p({
type: "calendar",
size: "20",
color: "#28b389"
}),
g: common_vendor.p({
date: Date.now(),
format: "dd日"
}),
h: common_vendor.f(randomList.value, (item, k0, i0) => {
return {
a: item.smallPicurl,
b: item._id,
c: common_vendor.o(($event) => goPreview(item._id), item._id)
};
}),
i: common_vendor.f(classifyList.value, (item, k0, i0) => {
return {
a: item._id,
b: "1cf27b2a-7-" + i0,
c: common_vendor.p({
isMore: false,
item
})
};
}),
j: common_vendor.p({
isMore: true
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-1cf27b2a"]]);
_sfc_main.__runtimeHooks = 6;
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map

View File

@@ -0,0 +1,11 @@
{
"navigationBarTitleText": "uni-app",
"navigationStyle": "custom",
"usingComponents": {
"custom-nav-bar": "../../components/custom-nav-bar/custom-nav-bar",
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons",
"uni-dateformat": "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat",
"common-title": "../../components/common-title/common-title",
"theme-item": "../../components/theme-item/theme-item"
}
}

View File

@@ -0,0 +1 @@
<view class="homeLayout pageBg data-v-1cf27b2a"><custom-nav-bar wx:if="{{a}}" class="data-v-1cf27b2a" u-i="1cf27b2a-0" bind:__l="__l" u-p="{{a}}"></custom-nav-bar><view class="banner data-v-1cf27b2a"><swiper class="data-v-1cf27b2a" indicator-dots="{{true}}" circular="{{true}}" indicator-color="rgba(255,255,255,0.5)" indicator-active-color="#fff" autoplay="{{true}}"><swiper-item wx:for="{{b}}" wx:for-item="item" wx:key="g" class="data-v-1cf27b2a"><navigator wx:if="{{item.a}}" class="like data-v-1cf27b2a" url="{{item.c}}" target="miniProgram" app-id="{{item.d}}"><image class="data-v-1cf27b2a" src="{{item.b}}" mode="aspectFill"></image></navigator><navigator wx:else url="{{item.f}}" class="like data-v-1cf27b2a"><image class="data-v-1cf27b2a" src="{{item.e}}" mode="aspectFill"></image></navigator></swiper-item></swiper></view><view class="notice data-v-1cf27b2a"><view class="left data-v-1cf27b2a"><uni-icons wx:if="{{c}}" class="data-v-1cf27b2a" u-i="1cf27b2a-1" bind:__l="__l" u-p="{{c}}"></uni-icons><text class="text data-v-1cf27b2a">公告</text></view><view class="center data-v-1cf27b2a"><swiper class="data-v-1cf27b2a" vertical="{{true}}" autoplay="{{true}}" interval="1500" duration="300" circular="{{true}}"><swiper-item wx:for="{{d}}" wx:for-item="item" wx:key="c" class="data-v-1cf27b2a"><navigator class="data-v-1cf27b2a" url="{{item.b}}">{{item.a}}</navigator></swiper-item></swiper></view><view class="right data-v-1cf27b2a"><uni-icons wx:if="{{e}}" class="data-v-1cf27b2a" u-i="1cf27b2a-2" bind:__l="__l" u-p="{{e}}"></uni-icons></view></view><view class="select data-v-1cf27b2a"><common-title class="data-v-1cf27b2a" u-s="{{['name','custom']}}" u-i="1cf27b2a-3" bind:__l="__l"><view slot="name">每日推荐</view><view class="date data-v-1cf27b2a" slot="custom"><uni-icons wx:if="{{f}}" class="data-v-1cf27b2a" u-i="1cf27b2a-4,1cf27b2a-3" bind:__l="__l" u-p="{{f}}"></uni-icons><view class="text data-v-1cf27b2a"><uni-dateformat wx:if="{{g}}" class="data-v-1cf27b2a" u-i="1cf27b2a-5,1cf27b2a-3" bind:__l="__l" u-p="{{g}}"></uni-dateformat></view></view></common-title><view class="content data-v-1cf27b2a"><scroll-view class="data-v-1cf27b2a" scroll-x="{{true}}"><view wx:for="{{h}}" wx:for-item="item" wx:key="b" class="box data-v-1cf27b2a" bindtap="{{item.c}}"><image class="data-v-1cf27b2a" src="{{item.a}}" mode="aspectFill"></image></view></scroll-view></view></view><view class="theme data-v-1cf27b2a"><common-title class="data-v-1cf27b2a" u-s="{{['name','custom']}}" u-i="1cf27b2a-6" bind:__l="__l"><view slot="name">专题精选</view><view slot="custom"><navigator url="/pages/classify/classify" class="more data-v-1cf27b2a" open-type="reLaunch">More+</navigator></view></common-title><view class="content data-v-1cf27b2a"><theme-item wx:for="{{i}}" wx:for-item="item" wx:key="a" class="data-v-1cf27b2a" u-i="{{item.b}}" bind:__l="__l" u-p="{{item.c}}"></theme-item><theme-item wx:if="{{j}}" class="data-v-1cf27b2a" u-i="1cf27b2a-8" bind:__l="__l" u-p="{{j}}"></theme-item></view></view></view>

View File

@@ -0,0 +1,130 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.homeLayout .banner.data-v-1cf27b2a {
width: 750rpx;
padding: 30rpx 0;
}
.homeLayout .banner swiper.data-v-1cf27b2a {
width: 750rpx;
height: 340rpx;
}
.homeLayout .banner swiper swiper-item.data-v-1cf27b2a {
width: 100%;
height: 100%;
padding: 0 30rpx;
}
.homeLayout .banner swiper swiper-item .like.data-v-1cf27b2a {
width: 100%;
height: 100%;
}
.homeLayout .banner swiper swiper-item .like image.data-v-1cf27b2a {
width: 100%;
height: 100%;
border-radius: 10rpx;
}
.homeLayout .notice.data-v-1cf27b2a {
width: 690rpx;
margin: 0 auto;
height: 80rpx;
background: #f9f9f9;
line-height: 80rpx;
border-radius: 80rpx;
display: flex;
}
.homeLayout .notice .left.data-v-1cf27b2a {
width: 140rpx;
display: flex;
align-items: center;
justify-content: center;
}
.homeLayout .notice .left .text.data-v-1cf27b2a {
color: #000;
font-size: 28rpx;
font-weight: 600;
}
.homeLayout .notice .center.data-v-1cf27b2a {
flex: 1;
}
.homeLayout .notice .center swiper.data-v-1cf27b2a {
height: 100%;
}
.homeLayout .notice .center swiper swiper-item.data-v-1cf27b2a {
height: 100%;
font-size: 30rpx;
color: #666;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.homeLayout .notice .right.data-v-1cf27b2a {
width: 70rpx;
display: flex;
align-items: center;
justify-content: center;
}
.homeLayout .select.data-v-1cf27b2a {
padding-top: 50rpx;
}
.homeLayout .select .date.data-v-1cf27b2a {
color: #28B389;
display: flex;
align-items: center;
}
.homeLayout .select .content.data-v-1cf27b2a {
width: 720rpx;
margin-left: 30rpx;
margin-top: 30rpx;
}
.homeLayout .select .content scroll-view.data-v-1cf27b2a {
white-space: nowrap;
}
.homeLayout .select .content scroll-view .box.data-v-1cf27b2a {
display: inline-block;
width: 200rpx;
height: 430rpx;
margin-right: 15rpx;
}
.homeLayout .select .content scroll-view .box image.data-v-1cf27b2a {
width: 100%;
height: 100%;
}
.homeLayout .select .content scroll-view .box.data-v-1cf27b2a:last-child {
margin-right: 30rpx;
}
.homeLayout .theme.data-v-1cf27b2a {
padding: 50rpx 0;
}
.homeLayout .theme .more.data-v-1cf27b2a {
font-size: 32rpx;
color: #888;
}
.homeLayout .theme .content.data-v-1cf27b2a {
margin-top: 30rpx;
padding: 0 30rpx;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 15rpx;
}

View File

@@ -0,0 +1,62 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_uni_tag2 = common_vendor.resolveComponent("uni-tag");
const _easycom_uni_dateformat2 = common_vendor.resolveComponent("uni-dateformat");
const _easycom_mp_html2 = common_vendor.resolveComponent("mp-html");
(_easycom_uni_tag2 + _easycom_uni_dateformat2 + _easycom_mp_html2)();
}
const _easycom_uni_tag = () => "../../uni_modules/uni-tag/components/uni-tag/uni-tag.js";
const _easycom_uni_dateformat = () => "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat.js";
const _easycom_mp_html = () => "../../uni_modules/mp-html/components/mp-html/mp-html.js";
if (!Math) {
(_easycom_uni_tag + _easycom_uni_dateformat + _easycom_mp_html)();
}
const _sfc_main = {
__name: "detail",
setup(__props) {
const detail = common_vendor.ref({});
const noticeId = common_vendor.ref("");
const noticeName = common_vendor.ref("");
common_vendor.onLoad((e) => {
common_vendor.index.__f__("log", "at pages/notice/detail.vue:46", e);
noticeId.value = e.id;
noticeName.value = e.name;
common_vendor.index.setNavigationBarTitle({
title: noticeName.value
});
getNoticeDetail();
});
const getNoticeDetail = async () => {
let res = await api_apis.apiNoticeDetail({ id: noticeId.value });
detail.value = res.data;
common_vendor.index.__f__("log", "at pages/notice/detail.vue:59", res);
};
return (_ctx, _cache) => {
return common_vendor.e({
a: detail.value.select
}, detail.value.select ? {
b: common_vendor.p({
text: "置顶",
inverted: true,
type: "error"
})
} : {}, {
c: common_vendor.t(detail.value.title),
d: common_vendor.t(detail.value.author),
e: common_vendor.p({
date: detail.value.publish_date,
format: "yyyy-MM-dd hh:mm:ss"
}),
f: common_vendor.p({
content: detail.value.content
}),
g: common_vendor.t(detail.value.view_count)
});
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-0f737f11"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/notice/detail.js.map

View File

@@ -0,0 +1,8 @@
{
"navigationBarTitleText": "公告详情",
"usingComponents": {
"uni-tag": "../../uni_modules/uni-tag/components/uni-tag/uni-tag",
"uni-dateformat": "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat",
"mp-html": "../../uni_modules/mp-html/components/mp-html/mp-html"
}
}

View File

@@ -0,0 +1 @@
<view class="noticeLayout data-v-0f737f11"><view class="title data-v-0f737f11"><view class="tag data-v-0f737f11"><uni-tag wx:if="{{a}}" class="data-v-0f737f11" u-i="0f737f11-0" bind:__l="__l" u-p="{{b}}"></uni-tag></view><view class="font data-v-0f737f11">{{c}}</view></view><view class="info data-v-0f737f11"><view class="item data-v-0f737f11">{{d}}</view><view class="item data-v-0f737f11"><uni-dateformat wx:if="{{e}}" class="data-v-0f737f11" u-i="0f737f11-1" bind:__l="__l" u-p="{{e}}"></uni-dateformat></view></view><view class="content data-v-0f737f11"><mp-html wx:if="{{f}}" class="data-v-0f737f11" u-i="0f737f11-2" bind:__l="__l" u-p="{{f}}"/></view><view class="count data-v-0f737f11"> 阅读数量:{{g}}</view></view>

View File

@@ -0,0 +1,60 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.noticeLayout.data-v-0f737f11 {
padding: 30rpx;
}
.noticeLayout .title.data-v-0f737f11 {
display: flex;
align-items: center;
font-size: 40rpx;
color: #111;
line-height: 1.6em;
padding-bottom: 30rpx;
}
.noticeLayout .title .tag.data-v-0f737f11 {
transform: scale(0.8);
transform-origin: left center;
flex-shrink: 0;
}
.noticeLayout .title .font.data-v-0f737f11 {
padding-left: 4rpx;
}
.noticeLayout .info.data-v-0f737f11 {
display: flex;
align-items: center;
color: #999;
font-size: 28rpx;
}
.noticeLayout .info .item.data-v-0f737f11 {
padding-left: 20rpx;
}
.noticeLayout .content.data-v-0f737f11 {
padding: 50rpx 0;
}
.noticeLayout .count.data-v-0f737f11 {
color: #999;
font-size: 28rpx;
}

View File

@@ -0,0 +1,9 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = {};
function _sfc_render(_ctx, _cache) {
return {};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/notice/notice.js.map

View File

@@ -0,0 +1,4 @@
{
"navigationBarTitleText": "公告",
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view class=""></view>

View File

View File

@@ -0,0 +1,329 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const utils_system = require("../../utils/system.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
const _easycom_uni_dateformat2 = common_vendor.resolveComponent("uni-dateformat");
const _easycom_uni_rate2 = common_vendor.resolveComponent("uni-rate");
const _easycom_uni_popup2 = common_vendor.resolveComponent("uni-popup");
(_easycom_uni_icons2 + _easycom_uni_dateformat2 + _easycom_uni_rate2 + _easycom_uni_popup2)();
}
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
const _easycom_uni_dateformat = () => "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat.js";
const _easycom_uni_rate = () => "../../uni_modules/uni-rate/components/uni-rate/uni-rate.js";
const _easycom_uni_popup = () => "../../uni_modules/uni-popup/components/uni-popup/uni-popup.js";
if (!Math) {
(_easycom_uni_icons + _easycom_uni_dateformat + _easycom_uni_rate + _easycom_uni_popup)();
}
const _sfc_main = {
__name: "preview",
setup(__props) {
const maskState = common_vendor.ref(true);
const infoPopup = common_vendor.ref(null);
const currentInfo = common_vendor.ref({});
const scorePopup = common_vendor.ref(null);
const userScore = common_vendor.ref(0);
const isScore = common_vendor.ref(false);
const classList = common_vendor.ref([]);
const currentId = common_vendor.ref(null);
const currentIndex = common_vendor.ref(0);
const readImgs = common_vendor.ref([]);
const storgClassList = common_vendor.index.getStorageSync("storgClassList") || [];
classList.value = storgClassList.map((item) => {
return {
...item,
//注意 _small.webp是小图,要看大图的话,需要将后缀改变成.jpg
picurl: item.smallPicurl.replace("_small.webp", ".jpg")
};
});
common_vendor.onLoad(async (e) => {
currentId.value = e.id;
if (e.type == "share") {
let res = await api_apis.apiDetailWall({ id: currentId.value });
classList.value = res.data.map((item) => {
return {
...item,
picurl: item.smallPicurl.replace("_small.webp", ".jpg")
};
});
}
currentIndex.value = classList.value.findIndex((item) => item._id == currentId.value);
readImgsFun();
currentInfo.value = classList.value[currentIndex.value];
});
const swiperChange = (e) => {
currentIndex.value = e.detail.current;
readImgsFun();
currentInfo.value = classList.value[currentIndex.value];
};
const readImgsFun = () => {
readImgs.value.push(
currentIndex.value <= 0 ? classList.value.length - 1 : currentIndex.value - 1,
currentIndex.value,
currentIndex.value >= classList.value.length - 1 ? 0 : currentIndex.value + 1
);
readImgs.value = [...new Set(readImgs.value)];
};
const clickInfo = () => {
infoPopup.value.open();
};
const clickInfoClose = () => {
infoPopup.value.close();
};
const clickScore = () => {
if (currentInfo.value.userScore) {
isScore.value = true;
userScore.value = currentInfo.value.userScore;
}
scorePopup.value.open();
};
const clickScoreClose = () => {
scorePopup.value.close();
userScore.value = 0;
isScore.value = false;
};
const submitScore = async () => {
common_vendor.index.showLoading({
title: "加载中..."
});
let {
classid,
_id: wallId
} = currentInfo.value;
let res = await api_apis.apiGetSetScore({
classid,
wallId,
userScore: userScore.value
});
common_vendor.index.hideLoading();
if (res.errCode === 0) {
common_vendor.index.showToast({
title: "评分成功",
icon: "none"
});
}
classList.value[currentIndex.value].userScore = userScore.value;
common_vendor.index.setStorageSync("storgClassList", classList.value);
clickScoreClose();
};
const maskChange = () => {
maskState.value = !maskState.value;
};
const goBack = () => {
common_vendor.index.navigateBack({
success: () => {
},
fail: (err) => {
common_vendor.index.reLaunch({
url: "/pages/index/index"
});
}
});
};
const clickDownload = async () => {
try {
common_vendor.index.showLoading({
title: "下载中...",
// 显示过程中不允许点击其他的东西
mask: true
});
let {
classid,
_id: wallId
} = currentInfo.value;
let res = await api_apis.apiWriteDownload({
classid,
wallId
});
if (res.errCode != 0) {
throw res;
}
common_vendor.index.getImageInfo({
// 这个getImageInfo是为了根据网络地址获得一个临时下载地址以便能够下载到相册里面
//单纯的使用 saveImageToPhotosAlbum 是不能够保存图片的
src: currentInfo.value.picurl,
success: (res2) => {
common_vendor.index.saveImageToPhotosAlbum({
filePath: res2.path,
success: (res3) => {
common_vendor.index.showToast({
title: "保存成功,请到相册查看",
icon: "none"
});
},
fail: (err) => {
if (err.errMsg == "saveImagePhotoAlbum:fail cancel") {
common_vendor.index.showToast({
title: "保存失败,请重新点击下载",
icon: "none"
});
return;
}
common_vendor.index.showModal({
title: "授权提示",
content: "需要授权保存相册",
//success表示系统回复了的情况
success: (res3) => {
if (res3.confirm) {
common_vendor.index.openSetting({
success: (setting) => {
common_vendor.index.__f__(
"log",
"at pages/preview/preview.vue:404",
setting
);
if (setting.authSetting["scope.writePhotosAlbum"]) {
common_vendor.index.showToast({
title: "获取授权成功",
icon: "none"
});
} else {
common_vendor.index.showToast({
title: "获取权限失败",
icon: "none"
});
}
}
});
}
}
});
},
//complete表示无论成功还是失败都会做的事件
complete: () => {
common_vendor.index.hideLoading();
}
});
}
});
} catch (err) {
common_vendor.index.hideLoading();
}
};
common_vendor.onShareAppMessage((e) => {
return {
title: "hzb壁纸-",
// 必须传递id进去否则进不去内部页面
path: "/pages/preview/preview?id=" + currentId.value + "&type=share"
};
});
common_vendor.onShareTimeline(() => {
return {
// 标题
title: "hzb壁纸~~~",
// 分享时候的图片地址。可以本地也可以网络图
// imageUrl:"/static/images/logo2.jpg"
//要想看朋友圈这个需要带的query参数
// type表示是分享传入的
query: "id=" + currentId.value + "&type=share"
};
});
return (_ctx, _cache) => {
return {
a: common_vendor.f(classList.value, (item, index, i0) => {
return common_vendor.e({
a: readImgs.value.includes(index)
}, readImgs.value.includes(index) ? {
b: common_vendor.o(maskChange, item._id),
c: item.picurl
} : {}, {
d: item._id
});
}),
b: currentIndex.value,
c: common_vendor.o(swiperChange),
d: common_vendor.p({
type: "back",
color: "#fff",
size: "20"
}),
e: common_vendor.o(goBack),
f: common_vendor.unref(utils_system.getPreviewBarHeight)() + "px",
g: common_vendor.t(currentIndex.value + 1),
h: common_vendor.t(classList.value.length),
i: common_vendor.p({
date: Date.now(),
format: "hh:mm"
}),
j: common_vendor.p({
date: Date.now(),
format: "MM月dd日"
}),
k: common_vendor.p({
type: "info",
size: "23"
}),
l: common_vendor.o(clickInfo),
m: common_vendor.p({
type: "star",
size: "23"
}),
n: common_vendor.t(currentInfo.value.score),
o: common_vendor.o(clickScore),
p: common_vendor.p({
type: "download",
size: "23"
}),
q: common_vendor.o(clickDownload),
r: maskState.value,
s: common_vendor.p({
type: "closeempty",
size: "18",
color: "#999"
}),
t: common_vendor.o(clickInfoClose),
v: common_vendor.t(currentInfo.value._id),
w: common_vendor.t(currentInfo.value.nickname),
x: common_vendor.p({
readonly: true,
touchable: false,
value: currentInfo.value.score,
size: "16"
}),
y: common_vendor.t(currentInfo.value.score),
z: common_vendor.t(currentInfo.value.description),
A: common_vendor.f(currentInfo.value.tabs, (tab, k0, i0) => {
return {
a: common_vendor.t(tab),
b: tab
};
}),
B: common_vendor.sr(infoPopup, "2dad6c07-6", {
"k": "infoPopup"
}),
C: common_vendor.p({
type: "bottom"
}),
D: common_vendor.t(isScore.value ? "已经评分过了~" : "壁纸评分"),
E: common_vendor.p({
type: "closeempty",
size: "18",
color: "#999"
}),
F: common_vendor.o(clickScoreClose),
G: common_vendor.o(_ctx.onChange),
H: common_vendor.o(($event) => userScore.value = $event),
I: common_vendor.p({
disabled: isScore.value,
["disabled-color"]: "#FFCA3E",
allowHalf: true,
modelValue: userScore.value
}),
J: common_vendor.t(userScore.value),
K: common_vendor.o(submitScore),
L: !userScore.value || isScore.value,
M: common_vendor.sr(scorePopup, "2dad6c07-9", {
"k": "scorePopup"
}),
N: common_vendor.p({
["is-mask-click"]: false
})
};
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-2dad6c07"]]);
_sfc_main.__runtimeHooks = 6;
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/preview/preview.js.map

View File

@@ -0,0 +1,10 @@
{
"navigationBarTitleText": "预览",
"navigationStyle": "custom",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons",
"uni-dateformat": "../../uni_modules/uni-dateformat/components/uni-dateformat/uni-dateformat",
"uni-rate": "../../uni_modules/uni-rate/components/uni-rate/uni-rate",
"uni-popup": "../../uni_modules/uni-popup/components/uni-popup/uni-popup"
}
}

View File

@@ -0,0 +1 @@
<view class="preview data-v-2dad6c07"><swiper class="data-v-2dad6c07" circular="{{true}}" current="{{b}}" bindchange="{{c}}"><swiper-item wx:for="{{a}}" wx:for-item="item" wx:key="d" class="data-v-2dad6c07"><image wx:if="{{item.a}}" class="data-v-2dad6c07" bindtap="{{item.b}}" src="{{item.c}}" mode="aspectFill"></image></swiper-item></swiper><view class="mask data-v-2dad6c07" hidden="{{!r}}"><view class="goBack data-v-2dad6c07" bindtap="{{e}}" style="{{'top:' + f}}"><uni-icons wx:if="{{d}}" class="data-v-2dad6c07" u-i="2dad6c07-0" bind:__l="__l" u-p="{{d}}"></uni-icons></view><view class="count data-v-2dad6c07">{{g}} / {{h}}</view><view class="time data-v-2dad6c07"><uni-dateformat wx:if="{{i}}" class="data-v-2dad6c07" u-i="2dad6c07-1" bind:__l="__l" u-p="{{i}}"></uni-dateformat></view><view class="date data-v-2dad6c07"><uni-dateformat wx:if="{{j}}" class="data-v-2dad6c07" u-i="2dad6c07-2" bind:__l="__l" u-p="{{j}}"></uni-dateformat></view><view class="footer data-v-2dad6c07"><view class="box data-v-2dad6c07" bindtap="{{l}}"><uni-icons wx:if="{{k}}" class="data-v-2dad6c07" u-i="2dad6c07-3" bind:__l="__l" u-p="{{k}}"></uni-icons><view class="text data-v-2dad6c07">信息</view></view><view class="box data-v-2dad6c07" bindtap="{{o}}"><uni-icons wx:if="{{m}}" class="data-v-2dad6c07" u-i="2dad6c07-4" bind:__l="__l" u-p="{{m}}"></uni-icons><view class="text data-v-2dad6c07">{{n}}分</view></view><view class="box data-v-2dad6c07" bindtap="{{q}}"><uni-icons wx:if="{{p}}" class="data-v-2dad6c07" u-i="2dad6c07-5" bind:__l="__l" u-p="{{p}}"></uni-icons><view class="text data-v-2dad6c07">下载</view></view></view></view><uni-popup wx:if="{{C}}" class="r data-v-2dad6c07" u-s="{{['d']}}" u-r="infoPopup" u-i="2dad6c07-6" bind:__l="__l" u-p="{{C}}"><view class="infoPopup data-v-2dad6c07"><view class="popHeader data-v-2dad6c07"><view class="data-v-2dad6c07"></view><view class="title data-v-2dad6c07">壁纸信息</view><view class="close data-v-2dad6c07" bindtap="{{t}}"><uni-icons wx:if="{{s}}" class="data-v-2dad6c07" u-i="2dad6c07-7,2dad6c07-6" bind:__l="__l" u-p="{{s}}"></uni-icons></view></view><scroll-view class="data-v-2dad6c07" scroll-y="{{true}}"><view class="content data-v-2dad6c07"><view class="row data-v-2dad6c07"><view class="label data-v-2dad6c07">壁纸ID</view><text selectable class="value data-v-2dad6c07">{{v}}</text></view><view class="row data-v-2dad6c07"><view class="label data-v-2dad6c07">发布者:</view><text class="value data-v-2dad6c07">{{w}}</text></view><view class="row data-v-2dad6c07"><text class="label data-v-2dad6c07">评分:</text><view class="value roteBox data-v-2dad6c07"><uni-rate wx:if="{{x}}" class="data-v-2dad6c07" u-i="2dad6c07-8,2dad6c07-6" bind:__l="__l" u-p="{{x}}"/><text class="score data-v-2dad6c07">{{y}}</text></view></view><view class="row data-v-2dad6c07"><text class="label data-v-2dad6c07">摘要:</text><view class="value data-v-2dad6c07">{{z}}</view></view><view class="row data-v-2dad6c07"><text class="label data-v-2dad6c07">标签:</text><view class="value tabs data-v-2dad6c07"><view wx:for="{{A}}" wx:for-item="tab" wx:key="b" class="tab data-v-2dad6c07">{{tab.a}}</view></view></view><view class="copyright data-v-2dad6c07"> 声明本图片来用户投稿非商业使用用于免费学习交流如侵犯了您的权益您可以拷贝壁纸ID举报至平台邮箱513894357@qq.com管理将删除侵权壁纸维护您的权益。 </view><view class="safe-area-inset-bottom data-v-2dad6c07"></view></view></scroll-view></view></uni-popup><uni-popup wx:if="{{N}}" class="r data-v-2dad6c07" u-s="{{['d']}}" u-r="scorePopup" u-i="2dad6c07-9" bind:__l="__l" u-p="{{N}}"><view class="scorePopup data-v-2dad6c07"><view class="popHeader data-v-2dad6c07"><view class="data-v-2dad6c07"></view><view class="title data-v-2dad6c07">{{D}}</view><view class="close data-v-2dad6c07" bindtap="{{F}}"><uni-icons wx:if="{{E}}" class="data-v-2dad6c07" u-i="2dad6c07-10,2dad6c07-9" bind:__l="__l" u-p="{{E}}"></uni-icons></view></view><view class="content data-v-2dad6c07"><uni-rate wx:if="{{I}}" class="data-v-2dad6c07" bindchange="{{G}}" u-i="2dad6c07-11,2dad6c07-9" bind:__l="__l" bindupdateModelValue="{{H}}" u-p="{{I}}"/><text class="text data-v-2dad6c07">{{J}}分</text></view><view class="footer data-v-2dad6c07"><button class="data-v-2dad6c07" bindtap="{{K}}" disabled="{{L}}" type="default" size="mini" plain>确认评分</button></view></view></uni-popup></view>

View File

@@ -0,0 +1,256 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.preview.data-v-2dad6c07 {
width: 100%;
height: 100vh;
position: relative;
}
.preview swiper.data-v-2dad6c07 {
width: 100%;
height: 100%;
}
.preview swiper image.data-v-2dad6c07 {
width: 100%;
height: 100%;
}
.preview .mask .goBack.data-v-2dad6c07 {
position: absolute;
left: 0;
right: 0;
margin: auto;
width: -webkit-fit-content;
width: fit-content;
color: #fff;
width: 38px;
height: 38px;
background: rgba(0, 0, 0, 0.5);
left: 30rpx;
top: 0;
margin-left: 0;
border-radius: 100px;
-webkit-backdrop-filter: blur(10rpx);
backdrop-filter: blur(10rpx);
border: 1px solid rbga(255, 255, 255, 0.3);
display: flex;
justify-content: center;
align-items: center;
}
.preview .mask .count.data-v-2dad6c07 {
position: absolute;
top: 10vh;
left: 0;
right: 0;
margin: auto;
width: -webkit-fit-content;
width: fit-content;
background: rgba(0, 0, 0, 0.3);
font-size: 28rpx;
color: #fff;
border-radius: 40rpx;
padding: 8rpx 28rpx;
-webkit-backdrop-filter: blur(20rpx);
backdrop-filter: blur(20rpx);
}
.preview .mask .time.data-v-2dad6c07 {
position: absolute;
left: 0;
right: 0;
margin: auto;
width: -webkit-fit-content;
width: fit-content;
color: #fff;
top: calc(10vh + 80rpx);
font-size: 140rpx;
font-weight: 100rpx;
line-height: 1em;
text-shadow: 0 4rpx rgba(0, 0, 0, 0.3);
}
.preview .mask .date.data-v-2dad6c07 {
position: absolute;
left: 0;
right: 0;
margin: auto;
width: -webkit-fit-content;
width: fit-content;
color: #fff;
top: calc(10vh + 230rpx);
font-size: 34rpx;
text-shadow: 0 2rpx rgba(0, 0, 0, 0.3);
}
.preview .mask .footer.data-v-2dad6c07 {
position: absolute;
left: 0;
right: 0;
margin: auto;
width: -webkit-fit-content;
width: fit-content;
color: #fff;
background: rgba(255, 255, 255, 0.8);
bottom: 10vh;
width: 65vw;
height: 120rpx;
border-radius: 120rpx;
color: #000;
display: flex;
justify-content: space-around;
align-items: center;
box-shadow: 0 2rpx rgba(0, 0, 0, 0.1);
-webkit-backdrop-filter: blur(20rpx);
backdrop-filter: blur(20rpx);
}
.preview .mask .footer .box.data-v-2dad6c07 {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding: 2rpx 12rpx;
}
.preview .mask .footer .box .text.data-v-2dad6c07 {
font-size: 26rpx;
color: #676767;
}
.preview .popHeader.data-v-2dad6c07 {
display: flex;
justify-content: space-between;
align-items: center;
}
.preview .popHeader .title.data-v-2dad6c07 {
color: #676767;
font-size: 26rpx;
}
.preview .popHeader .close.data-v-2dad6c07 {
padding: 6rpx;
}
.preview .infoPopup.data-v-2dad6c07 {
background: #fff;
padding: 30rpx;
border-radius: 30rpx 30rpx 0 0;
overflow: hidden;
}
.preview .infoPopup scroll-view.data-v-2dad6c07 {
max-height: 60vh;
}
.preview .infoPopup scroll-view .content .row.data-v-2dad6c07 {
display: flex;
padding: 16rpx 0;
font-size: 32rpx;
line-height: 1.7em;
}
.preview .infoPopup scroll-view .content .row .label.data-v-2dad6c07 {
color: #a7a7a7;
width: 140rpx;
text-align: right;
font-size: 30rpx;
}
.preview .infoPopup scroll-view .content .row .value.data-v-2dad6c07 {
flex: 1;
width: 0;
font-size: 30rpx;
}
.preview .infoPopup scroll-view .content .row .roteBox.data-v-2dad6c07 {
display: flex;
align-items: center;
}
.preview .infoPopup scroll-view .content .row .roteBox .score.data-v-2dad6c07 {
font-size: 26rpx;
color: #676767;
padding-left: 10rpx;
}
.preview .infoPopup scroll-view .content .row .tabs.data-v-2dad6c07 {
display: flex;
white-space: wrap;
}
.preview .infoPopup scroll-view .content .row .tabs .tab.data-v-2dad6c07 {
border: 1px solid #28B389;
color: #28B389;
font-size: 22rpx;
padding: 10rpx 30rpx;
border-radius: 40rpx;
line-height: 1em;
margin: 0 10rpx 10rpx 0;
}
.preview .infoPopup scroll-view .content .row .class.data-v-2dad6c07 {
color: #28B389;
}
.preview .infoPopup scroll-view .content .copyright.data-v-2dad6c07 {
font-size: 28rpx;
padding: 20rpx;
background: #F6F6F6;
color: #666;
border-radius: 10rpx;
margin: 20rpx 0;
line-height: 1.5em;
}
.preview .scorePopup.data-v-2dad6c07 {
background: #fff;
padding: 30rpx;
width: 70vw;
border-radius: 30rpx;
overflow: hidden;
}
.preview .scorePopup .content.data-v-2dad6c07 {
padding: 30rpx 0;
display: flex;
justify-content: center;
align-items: center;
}
.preview .scorePopup .content .text.data-v-2dad6c07 {
color: #FFCA3E;
padding-left: 10rpx;
width: 80rpx;
line-height: 1em;
text-align: right;
}
.preview .scorePopup .footer.data-v-2dad6c07 {
display: flex;
justify-content: center;
align-items: center;
}

View File

@@ -0,0 +1,149 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_uni_search_bar2 = common_vendor.resolveComponent("uni-search-bar");
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
const _easycom_uv_empty2 = common_vendor.resolveComponent("uv-empty");
const _easycom_uni_load_more2 = common_vendor.resolveComponent("uni-load-more");
(_easycom_uni_search_bar2 + _easycom_uni_icons2 + _easycom_uv_empty2 + _easycom_uni_load_more2)();
}
const _easycom_uni_search_bar = () => "../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar.js";
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
const _easycom_uv_empty = () => "../../uni_modules/uv-empty/components/uv-empty/uv-empty.js";
const _easycom_uni_load_more = () => "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js";
if (!Math) {
(_easycom_uni_search_bar + _easycom_uni_icons + _easycom_uv_empty + _easycom_uni_load_more)();
}
const _sfc_main = {
__name: "search",
setup(__props) {
const queryParams = common_vendor.ref({
pageNum: 1,
pageSize: 12,
keyword: ""
});
const historySearch = common_vendor.ref(common_vendor.index.getStorageSync("historySearch") || []);
const recommendList = common_vendor.ref(["美女", "帅哥", "宠物", "卡通"]);
const noData = common_vendor.ref(false);
const noSearch = common_vendor.ref(false);
const classList = common_vendor.ref([]);
const onClear = () => {
initParams();
};
const clickTab = (value) => {
initParams(value);
onSearch();
};
const removeHistory = () => {
common_vendor.index.showModal({
title: "是否清空历史搜索",
success: (res) => {
if (res.confirm) {
common_vendor.index.removeStorageSync("historySearch");
historySearch.value = [];
}
}
});
};
const onSearch = () => {
common_vendor.index.showLoading();
historySearch.value = [.../* @__PURE__ */ new Set([queryParams.value.keyword, ...historySearch.value])].slice(0, 10);
common_vendor.index.setStorageSync("historySearch", historySearch.value);
initParams(queryParams.value.keyword);
searchData();
};
const searchData = async () => {
try {
let res = await api_apis.apiSearchData(queryParams.value);
classList.value = [...classList.value, ...res.data];
common_vendor.index.setStorageSync("storgClassList", classList.value);
if (queryParams.value.pageSize > res.data.length)
noData.value = true;
if (res.data.length == 0 && classList.value.length == 0)
noSearch.value = true;
} finally {
common_vendor.index.hideLoading();
}
};
const initParams = (value = "") => {
classList.value = [];
noData.value = false;
noSearch.value = false;
queryParams.value = {
pageNum: 1,
pageSize: 12,
// 如果有传入值就把这个值赋给keyword没有值的话就默认变成""
keyword: value || ""
};
};
common_vendor.onReachBottom(() => {
if (noData.value)
return;
queryParams.value.pageNum++;
searchData();
});
common_vendor.onUnload(() => {
common_vendor.index.removeStorageSync("storgClassList", classList.value);
});
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.o(onSearch),
b: common_vendor.o(onClear),
c: common_vendor.o(onClear),
d: common_vendor.o(($event) => queryParams.value.keyword = $event),
e: common_vendor.p({
focus: true,
placeholder: "搜索",
modelValue: queryParams.value.keyword
}),
f: !classList.value.length || noSearch.value
}, !classList.value.length || noSearch.value ? common_vendor.e({
g: historySearch.value.length
}, historySearch.value.length ? {
h: common_vendor.p({
type: "trash",
size: "25"
}),
i: common_vendor.o(removeHistory),
j: common_vendor.f(historySearch.value, (tab, k0, i0) => {
return {
a: common_vendor.t(tab),
b: tab,
c: common_vendor.o(($event) => clickTab(tab), tab)
};
})
} : {}, {
k: common_vendor.f(recommendList.value, (tab, k0, i0) => {
return {
a: common_vendor.t(tab),
b: tab,
c: common_vendor.o(($event) => clickTab(tab), tab)
};
})
}) : {}, {
l: noSearch.value
}, noSearch.value ? {
m: common_vendor.p({
mode: "search"
})
} : common_vendor.e({
n: common_vendor.f(classList.value, (item, k0, i0) => {
return {
a: item.smallPicurl,
b: `/pages/preview/preview?id=${item._id}`,
c: item._id
};
}),
o: noData.value || classList.value.length
}, noData.value || classList.value.length ? {
p: common_vendor.p({
status: noData.value ? "noMore" : "loading"
})
} : {}));
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-c10c040c"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/search/search.js.map

View File

@@ -0,0 +1,9 @@
{
"navigationBarTitleText": "搜索",
"usingComponents": {
"uni-search-bar": "../../uni_modules/uni-search-bar/components/uni-search-bar/uni-search-bar",
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons",
"uv-empty": "../../uni_modules/uv-empty/components/uv-empty/uv-empty",
"uni-load-more": "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more"
}
}

View File

@@ -0,0 +1 @@
<view class="searchLayout data-v-c10c040c"><view class="search data-v-c10c040c"><uni-search-bar wx:if="{{e}}" class="data-v-c10c040c" bindconfirm="{{a}}" bindcancel="{{b}}" bindclear="{{c}}" u-i="c10c040c-0" bind:__l="__l" bindupdateModelValue="{{d}}" u-p="{{e}}"></uni-search-bar></view><view wx:if="{{f}}" class="data-v-c10c040c"><view wx:if="{{g}}" class="history data-v-c10c040c"><view class="topTitle data-v-c10c040c"><view class="text data-v-c10c040c">最近搜索</view><view class="icon data-v-c10c040c" bindtap="{{i}}"><uni-icons wx:if="{{h}}" class="data-v-c10c040c" u-i="c10c040c-1" bind:__l="__l" u-p="{{h}}"></uni-icons></view></view><view class="tabs data-v-c10c040c"><view wx:for="{{j}}" wx:for-item="tab" wx:key="b" class="tab data-v-c10c040c" bindtap="{{tab.c}}">{{tab.a}}</view></view></view><view class="recommend data-v-c10c040c"><view class="topTitle data-v-c10c040c"><view class="text data-v-c10c040c">热门搜索</view></view><view class="tabs data-v-c10c040c"><view wx:for="{{k}}" wx:for-item="tab" wx:key="b" class="tab data-v-c10c040c" bindtap="{{tab.c}}">{{tab.a}}</view></view></view></view><view wx:if="{{l}}" class="noSearch data-v-c10c040c"><uv-empty wx:if="{{m}}" class="data-v-c10c040c" u-i="c10c040c-2" bind:__l="__l" u-p="{{m}}"></uv-empty></view><view wx:else class="data-v-c10c040c"><view class="list data-v-c10c040c"><navigator wx:for="{{n}}" wx:for-item="item" wx:key="c" url="{{item.b}}" class="item data-v-c10c040c"><image class="data-v-c10c040c" src="{{item.a}}" mode="aspectFill"></image></navigator></view><view wx:if="{{o}}" class="loadingLayout data-v-c10c040c"><uni-load-more wx:if="{{p}}" class="data-v-c10c040c" u-i="c10c040c-3" bind:__l="__l" u-p="{{p}}"/></view></view></view>

View File

@@ -0,0 +1,68 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.searchLayout .search.data-v-c10c040c {
padding: 0 10rpx;
}
.searchLayout .topTitle.data-v-c10c040c {
display: flex;
justify-content: space-between;
align-items: center;
}
.searchLayout .history.data-v-c10c040c {
padding: 30rpx;
}
.searchLayout .recommend.data-v-c10c040c {
padding: 30rpx;
}
.searchLayout .tabs.data-v-c10c040c {
display: flex;
align-items: center;
flex-wrap: wrap;
padding-top: 20rpx;
}
.searchLayout .tabs .tab.data-v-c10c040c {
background: #F4F4F4;
font-size: 28rpx;
color: #333;
padding: 10rpx 28rpx;
border-radius: 50rpx;
margin-right: 20rpx;
margin-top: 20rpx;
}
.searchLayout .list.data-v-c10c040c {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 5rpx;
padding: 20rpx 5rpx;
}
.searchLayout .list .item.data-v-c10c040c {
height: 440rpx;
}
.searchLayout .list .item image.data-v-c10c040c {
height: 100%;
width: 100%;
display: block;
}

View File

@@ -0,0 +1,97 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const common_assets = require("../../common/assets.js");
const utils_system = require("../../utils/system.js");
const api_apis = require("../../api/apis.js");
if (!Array) {
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
const _easycom_uni_load_more2 = common_vendor.resolveComponent("uni-load-more");
(_easycom_uni_icons2 + _easycom_uni_load_more2)();
}
const _easycom_uni_icons = () => "../../uni_modules/uni-icons/components/uni-icons/uni-icons.js";
const _easycom_uni_load_more = () => "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js";
if (!Math) {
(_easycom_uni_icons + _easycom_uni_load_more)();
}
const _sfc_main = {
__name: "user",
setup(__props) {
const userinfo = common_vendor.ref(null);
const getUserInfo = async () => {
let res = await api_apis.apiUserInfo();
userinfo.value = res.data;
};
getUserInfo();
return (_ctx, _cache) => {
var _a, _b, _c, _d, _e, _f;
return common_vendor.e({
a: userinfo.value
}, userinfo.value ? {
b: common_vendor.unref(utils_system.getNavBarHeight)() + "px",
c: common_assets._imports_0,
d: common_vendor.t(userinfo.value.IP),
e: common_vendor.t(((_b = (_a = userinfo.value) == null ? void 0 : _a.address) == null ? void 0 : _b.city) || ((_d = (_c = userinfo.value) == null ? void 0 : _c.address) == null ? void 0 : _d.province) || ((_f = (_e = userinfo.value) == null ? void 0 : _e.address) == null ? void 0 : _f.country) || "中国"),
f: common_vendor.p({
type: "download-filled",
size: "20",
color: "#28b389"
}),
g: common_vendor.t(userinfo.value.downloadSize),
h: common_vendor.p({
type: "forward",
size: "15",
color: "#aaa"
}),
i: common_vendor.p({
type: "star-filled",
size: "20",
color: "#28b389"
}),
j: common_vendor.t(userinfo.value.scoreSize),
k: common_vendor.p({
type: "forward",
size: "15",
color: "#aaa"
}),
l: common_vendor.p({
type: "chatboxes-filled",
size: "20",
color: "#28b389"
}),
m: common_vendor.p({
type: "forward",
size: "15",
color: "#aaa"
}),
n: common_vendor.p({
type: "notification-filled",
size: "20",
color: "#28b389"
}),
o: common_vendor.p({
type: "forward",
size: "15",
color: "#aaa"
}),
p: common_vendor.p({
type: "flag-filled",
size: "20",
color: "#28b389"
}),
q: common_vendor.p({
type: "forward",
size: "15",
color: "#aaa"
})
} : {
r: common_vendor.unref(utils_system.getNavBarHeight)() + "px",
s: common_vendor.p({
status: "loading"
})
});
};
}
};
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-0f7520f0"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/user/user.js.map

View File

@@ -0,0 +1,8 @@
{
"navigationBarTitleText": "我的",
"navigationStyle": "custom",
"usingComponents": {
"uni-icons": "../../uni_modules/uni-icons/components/uni-icons/uni-icons",
"uni-load-more": "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more"
}
}

View File

@@ -0,0 +1 @@
<view wx:if="{{a}}" class="userLayout pageBg data-v-0f7520f0"><view class="data-v-0f7520f0" style="{{'height:' + b}}"></view><view class="userinfo data-v-0f7520f0"><view class="avatar data-v-0f7520f0"><image class="data-v-0f7520f0" src="{{c}}" mode="aspectFill"></image></view><view class="ip data-v-0f7520f0">{{d}}</view><view class="address data-v-0f7520f0">来自于: {{e}}</view></view><view class="section data-v-0f7520f0"><view class="list data-v-0f7520f0"><navigator class="data-v-0f7520f0" url="/pages/classlist/classlist?name=我的下载&type=download"><view class="row data-v-0f7520f0"><view class="left data-v-0f7520f0"><uni-icons wx:if="{{f}}" class="data-v-0f7520f0" u-i="0f7520f0-0" bind:__l="__l" u-p="{{f}}"></uni-icons><view class="text data-v-0f7520f0">我的下载</view></view><view class="right data-v-0f7520f0"><view class="text data-v-0f7520f0">{{g}}</view><uni-icons wx:if="{{h}}" class="data-v-0f7520f0" u-i="0f7520f0-1" bind:__l="__l" u-p="{{h}}"></uni-icons></view></view></navigator><navigator class="data-v-0f7520f0" url="/pages/classlist/classlist?name=我的评分&type=score"><view class="row data-v-0f7520f0"><view class="left data-v-0f7520f0"><uni-icons wx:if="{{i}}" class="data-v-0f7520f0" u-i="0f7520f0-2" bind:__l="__l" u-p="{{i}}"></uni-icons><view class="text data-v-0f7520f0">我的评分</view></view><view class="right data-v-0f7520f0"><view class="text data-v-0f7520f0">{{j}}</view><uni-icons wx:if="{{k}}" class="data-v-0f7520f0" u-i="0f7520f0-3" bind:__l="__l" u-p="{{k}}"></uni-icons></view></view></navigator><view class="row data-v-0f7520f0"><view class="left data-v-0f7520f0"><uni-icons wx:if="{{l}}" class="data-v-0f7520f0" u-i="0f7520f0-4" bind:__l="__l" u-p="{{l}}"></uni-icons><view class="text data-v-0f7520f0">联系客服</view></view><view class="right data-v-0f7520f0"><view class="text data-v-0f7520f0"></view><uni-icons wx:if="{{m}}" class="data-v-0f7520f0" u-i="0f7520f0-5" bind:__l="__l" u-p="{{m}}"></uni-icons></view><button open-type="contact" class="contact data-v-0f7520f0">联系客服</button></view></view></view><view class="section data-v-0f7520f0"><view class="list data-v-0f7520f0"><navigator class="data-v-0f7520f0" url="/pages/notice/detail?id=653507c6466d417a3718e94b&name=订阅更新"><view class="row data-v-0f7520f0"><view class="left data-v-0f7520f0"><uni-icons wx:if="{{n}}" class="data-v-0f7520f0" u-i="0f7520f0-6" bind:__l="__l" u-p="{{n}}"></uni-icons><view class="text data-v-0f7520f0">订阅更新</view></view><view class="right data-v-0f7520f0"><uni-icons wx:if="{{o}}" class="data-v-0f7520f0" u-i="0f7520f0-7" bind:__l="__l" u-p="{{o}}"></uni-icons></view></view></navigator><navigator class="data-v-0f7520f0" url="/pages/notice/detail?id=6536358ce0ec19c8d67fbe82&name=常见问题"><view class="row data-v-0f7520f0"><view class="left data-v-0f7520f0"><uni-icons wx:if="{{p}}" class="data-v-0f7520f0" u-i="0f7520f0-8" bind:__l="__l" u-p="{{p}}"></uni-icons><view class="text data-v-0f7520f0">常见问题</view></view><view class="right data-v-0f7520f0"><uni-icons wx:if="{{q}}" class="data-v-0f7520f0" u-i="0f7520f0-9" bind:__l="__l" u-p="{{q}}"></uni-icons></view></view></navigator></view></view></view><view wx:else class="loadingLayout data-v-0f7520f0"><view class="data-v-0f7520f0" style="{{'height:' + r}}"></view><uni-load-more wx:if="{{s}}" class="data-v-0f7520f0" u-i="0f7520f0-10" bind:__l="__l" u-p="{{s}}"></uni-load-more></view>

View File

@@ -0,0 +1,97 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.userLayout .userinfo.data-v-0f7520f0 {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 50rpx 0;
}
.userLayout .userinfo .avatar.data-v-0f7520f0 {
width: 160rpx;
height: 160rpx;
border-radius: 50%;
overflow: hidden;
}
.userLayout .userinfo .avatar image.data-v-0f7520f0 {
width: 100%;
height: 100%;
}
.userLayout .userinfo .ip.data-v-0f7520f0 {
font-size: 44rpx;
color: #333;
padding: 20rpx 0 5rpx;
}
.userLayout .userinfo .address.data-v-0f7520f0 {
font-size: 28rpx;
color: #aaa;
}
.userLayout .section.data-v-0f7520f0 {
width: 690rpx;
margin: 50rpx auto;
border: 1px solid #eee;
border-radius: 10rpx;
box-shadow: 0 0 30rpx rgba(0, 0, 0, 0.05);
}
.userLayout .section .list .row.data-v-0f7520f0 {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 30rpx;
height: 100rpx;
border-bottom: 1px solid #eee;
position: relative;
background: #fff;
}
.userLayout .section .list .row.data-v-0f7520f0:last-child {
border-bottom: 0;
}
.userLayout .section .list .row .left.data-v-0f7520f0 {
display: flex;
justify-content: center;
align-items: center;
}
.userLayout .section .list .row .left .text.data-v-0f7520f0 {
padding-left: 20rpx;
color: #666;
}
.userLayout .section .list .row .right.data-v-0f7520f0 {
display: flex;
justify-content: center;
align-items: center;
}
.userLayout .section .list .row .right .text.data-v-0f7520f0 {
font-size: 28rpx;
color: #aaa;
}
.userLayout .section .list .row button.data-v-0f7520f0 {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0;
}