Compare commits

..

71 Commits
master ... mini

Author SHA1 Message Date
34701892@qq.com 58ff90d70b fix: 为Article组件添加key属性以响应登录状态变化 2026-01-21 12:23:35 +08:00
34701892@qq.com 2c44b2dca5 style(articleList): 调整标签字体大小以保持样式一致 2026-01-15 09:29:38 +08:00
34701892@qq.com cae58ccd3f fix: 修复用户参数初始化及存储问题
将userParams的初始化提前到组件加载时,确保在onLoad中能正确存储token。同时移除重复的userParams赋值逻辑。
2026-01-15 09:27:24 +08:00
34701892@qq.com 90e01e8009 fix: 更新API基础URL和新闻详情页跳转链接参数
将API基础URL从本地测试环境切换到生产环境
修改新闻详情页跳转链接参数,使用item.id替代item.news_id并新增type参数
2026-01-14 16:27:54 +08:00
34701892@qq.com 12310a191d feat(minihome): 添加token和userType参数到搜索页面跳转链接
refactor(articleList): 简化列表项布局并优化时间显示格式
fix(config): 切换baseUrl为本地开发环境
feat(sreachReq): 实现微信小程序跳转并添加用户参数处理
2026-01-14 16:26:00 +08:00
zzp ac2515b6c6 refactor(RankListMini): 简化模板代码并注释导航功能
移除模板中不必要的换行和缩进以提高可读性
暂时注释掉导航功能以待后续处理
2026-01-10 10:19:35 +08:00
34701892@qq.com c29b2b48a9 style(RankListMini): 为新闻排名列表添加白色背景
为增强视觉对比度,在新闻排名列表组件中添加白色背景色
2026-01-06 17:59:52 +08:00
34701892@qq.com 7acc8c7332 fix: 修复RankListMini导航和调整indexNewsInfo底部间距
修复RankListMini组件中注释掉的导航功能,恢复新闻详情页跳转
调整indexNewsInfo组件底部内边距为200rpx,避免内容被遮挡
2026-01-06 17:29:51 +08:00
34701892@qq.com 73dd03d6b3 fix: 修复搜索结果为空时高度问题并更新新闻列表获取方式
调整搜索结果为空时的显示高度,确保UI一致性
将新闻列表获取方式从getTopNews切换为getTopNewsAll
2026-01-06 13:09:48 +08:00
34701892@qq.com 82f40c41cd refactor(文章组件): 调整编辑信息显示位置并添加二校信息
将编辑信息从顶部移动到文章底部,并新增二校人员信息显示。同时注释掉 RankListMini 组件中的导航代码
2026-01-06 13:04:10 +08:00
34701892@qq.com 64db654c41 fix(minihome): 调整页面间距和新闻列表样式
- 修改minihome页面的margin间距
- 替换新闻列表API调用为getTopNews
- 调整RankListMini组件的样式和间距
- 修复Domestic组件导航跳转功能
- 优化indexDomestic组件的字体样式和布局
2026-01-06 12:32:19 +08:00
34701892@qq.com d4f9d76688 refactor(minihome): 注释未使用的新闻列表获取和排行选项代码
移除首页新闻列表自动获取和排行列表中的浏览、点赞、分享选项代码,这些功能当前未使用
2026-01-06 09:45:25 +08:00
34701892@qq.com 96447e97b9 feat(新闻接口): 添加获取全部置顶新闻的接口并更新调用
新增getTopNewsAll接口用于获取全部置顶新闻数据,并将minihome页面的相关调用从getTopNews替换为getTopNewsAll
2026-01-06 09:43:23 +08:00
34701892@qq.com b3be3481e2 fix: 注释掉跳转到详情页的导航代码 2026-01-05 20:50:12 +08:00
34701892@qq.com e763c82dce fix: 统一新闻来源显示并添加手机号参数
修改多处组件将新闻来源统一显示为"中国证券报"
在获取文章详情API中添加可选phone参数
移除调试用的console.log语句
2026-01-05 20:45:20 +08:00
34701892@qq.com 763053ad6d fix(RankListMini): 修复跳转详情页时userType取值错误的问题
修复在跳转详情页时直接使用userType.value导致的问题,改为使用props.userParams.userType。同时添加了调试日志便于追踪userType的值。
2026-01-05 18:21:27 +08:00
34701892@qq.com c7c9b94e11 fix: 更新生产环境API地址并优化新闻来源显示
- 将生产环境API地址从测试服务器切换到正式服务器
- 修改新闻来源显示逻辑,国内新闻统一显示"中国证券报"
- 移除排行榜中的排名图标显示
- 修复分享链接地址为正式环境地址
2026-01-05 18:00:31 +08:00
34701892@qq.com fbea363bb8 fix: 修复本地开发环境配置和UI文本问题
- 将RankListMini中的分享链接改为本地开发环境
- 添加userType值的alert调试
- 修改minihome页面的"海外资讯"为"海外精选"
- 移除requestClass中的调试日志和优化GET请求处理
2026-01-05 16:48:54 +08:00
34701892@qq.com 5f0242d697 fix(domesticMini): 修复小程序跳转链接参数错误问题
将跳转链接中的item.news_id改为item.id并添加type参数
添加小程序跳转成功回调日志
移除不再使用的uni.navigateTo代码
2025-12-26 16:31:59 +08:00
34701892@qq.com 1f21f01bde refactor(导航): 统一微信小程序导航逻辑并简化环境判断
移除环境判断分支逻辑,统一使用微信小程序导航方式
清理无用代码并优化登录状态处理
更新文章组件以支持外部传入登录状态
删除index.html中冗余的脚本代码
2025-12-26 14:35:00 +08:00
34701892@qq.com 11fdfc16c6 feat(分享): 添加新闻详情页的微信小程序分享功能
在indexNewsInfo.vue中添加微信小程序分享功能,包含用户类型、手机号和ID等信息。同时注释掉index.html中重复的分享代码以避免冲突。
2025-12-26 12:19:16 +08:00
34701892@qq.com b492406f7b feat(微信小程序): 添加运行时环境判断及微信小程序webview跳转支持
添加 judgeRuntimeEnv 工具函数判断当前运行环境
在 domesticMini 和 RankListMini 组件中根据环境使用不同的导航方式
微信小程序webview环境下使用 wx.miniProgram.navigateTo 跳转
2025-12-26 12:15:11 +08:00
34701892@qq.com 7cd93926f8 feat(分享功能): 添加微信小程序分享跳转功能并优化分享链接处理
在RankListMini组件中添加微信小程序分享跳转功能,使用redirectTo方法
优化indexNewsInfo页面的分享链接处理逻辑,移除冗余代码
2025-12-25 17:25:49 +08:00
34701892@qq.com 2dc59ae87d feat(分享): 添加新闻详情页的微信分享功能
在indexNewsInfo.vue中添加微信分享URL生成和跳转逻辑
更新index.html中的微信JS-SDK相关代码
移除minihome/index.vue中无用的样式注释
修复pages.json文件格式问题
2025-12-25 16:34:25 +08:00
34701892@qq.com e8a9f2cb91 refactor(微信分享): 将微信小程序消息发送逻辑从组件移到index.html
将微信小程序的消息发送逻辑从indexNewsInfo.vue组件中移除,改为在index.html中统一处理
添加URL参数解析功能以支持从URL获取分享参数
2025-12-25 15:19:22 +08:00
34701892@qq.com b63bd3703a feat(新闻详情): 添加用户参数传递和微信小程序消息发送功能
- 在RankListMini组件中添加userParams参数传递
- 修改新闻详情页导航栏为注释状态
- 添加微信小程序环境判断及消息发送功能
- 优化搜索页面布局和样式
2025-12-25 11:13:44 +08:00
34701892@qq.com 1d1bbae0c5 fix: 更新生产环境API地址并调整用户类型权限控制
修改config中的baseUrl为生产环境地址
在indexNewsInfo.vue中添加用户类型判断,仅经理用户可显示评论功能
调整token刷新逻辑,仅对普通用户生效
2025-12-23 09:17:51 +08:00
34701892@qq.com fbcce419f2 feat(评论组件): 优化评论组件交互并调整API配置
移除点赞和分享功能,保留收藏功能并居中显示
在收藏请求中添加token参数
修改API基础URL为本地测试环境
2025-12-22 15:35:47 +08:00
34701892@qq.com 586d9c062d fix(utils): 移除调试日志并修复导航栏高度计算
refactor(detail): 优化token处理和页面刷新逻辑

- 在新闻详情页添加phone参数处理逻辑
- 修改token过期判断条件
- 使用window.location替代uni.reLaunch进行页面刷新
2025-12-22 11:17:05 +08:00
34701892@qq.com cd93d6d06d fix: 更新API基础URL并添加分享时间验证
修改vite配置添加base路径
更新开发环境和生产环境的API基础URL
在新闻详情页添加分享时间验证逻辑,超过24小时则刷新页面
2025-12-22 11:04:25 +08:00
34701892@qq.com 16b84d9d19 feat(minihome): 添加页面加载时处理用户参数逻辑
在页面加载时获取并处理用户参数,若存在手机号则存储为token
2025-12-22 10:13:57 +08:00
34701892@qq.com 3b156d7768 refactor(RankListMini): 移除登录检查直接跳转详情页
简化导航逻辑,不再检查token直接跳转到新闻详情页,提升用户体验
2025-12-18 14:09:56 +08:00
34701892@qq.com 69131f5f1d chore: 更新生产环境和开发环境的API地址
将生产环境和开发环境的API地址统一更改为http://123.60.153.169:8040/apih5,以保持环境配置一致性
2025-12-18 14:08:31 +08:00
34701892@qq.com c89b80e4eb feat: 更新开发环境配置并优化UI组件
更新.env.development和config/index.ts中的API地址配置
优化LoginPopup、RankListMini和minihome页面的UI组件布局和样式
在minihome页面添加banner标题和优化tab切换效果
2025-12-17 11:16:50 +08:00
34701892@qq.com 695149674f refactor(minihome): 重构首页布局并优化样式
- 移除注释代码和未使用的组件
- 重新设计顶部标签栏和搜索框样式
- 简化banner图片数组
- 调整页面结构和间距
2025-12-17 10:46:59 +08:00
zzp 8f23f0c315 feat: 更新基础URL并添加分享功能调试选项
- 将基础URL切换为生产环境
- 在分享功能中启用调试模式并显示appId
- 为评论组件添加新的分享功能
- 优化页面布局和代码格式
2025-09-11 19:35:07 +08:00
zzp ca66c8eb88 Merge branch 'mini' of https://gitee.com/zzpaym/zhongzheng-sample-clear-h5 into mini 2025-09-09 15:46:52 +08:00
zzp cf3cd6e263 feat(login): 添加H5登录弹窗支持并集成jweixin-module
- 新增H5环境下的登录弹窗组件及逻辑
- 添加jweixin-module依赖用于微信相关功能
- 修改baseUrl配置为本地开发环境
- 优化登录组件代码结构和样式
2025-09-09 15:46:49 +08:00
34701892@qq.com 69da934f68 Merge branch 'mini' of https://gitee.com/zzpaym/zhongzheng-sample-clear-h5 into mini 2025-09-05 20:30:40 +08:00
34701892@qq.com c5e4c34daa fix(api): 更新热门新闻接口路径
将热门新闻接口从/top_news_h5_d更改为/top_news_release_h5_d以匹配后端更新
2025-09-05 20:30:37 +08:00
zzp c6d8278f7d feat(domesticMini): 在详情跳转时存储homeTabIndex
在doDetail函数中添加uni.setStorageSync调用,用于在跳转到详情页时保存当前tab索引
2025-08-30 21:31:35 +08:00
zzp cda80c62d6 feat(文章组件): 添加国内新闻处理逻辑
为文章组件添加 isDomestic 属性,用于控制国内新闻的显示逻辑
调整首页搜索框和国内新闻列表的显示条件及间距
2025-08-30 21:21:49 +08:00
zzp d74ce73971 feat(国内资讯): 添加国内资讯详情功能及页面跳转
- 在domesticMini.vue中添加跳转到详情页的功能
- 在api/index.ts中新增获取国内资讯详情的接口
- 修改indexNewsInfo.vue以支持国内资讯详情展示
- 更新minihome/index.vue的tab切换逻辑
2025-08-30 20:33:45 +08:00
zzp a82d86efc2 feat(国内新闻): 新增国内新闻模块及相关组件
添加国内新闻API接口getDomestic
创建domesticMini.vue组件用于展示国内新闻列表
在minihome页面中添加国内新闻tab支持
新增indexDomestic.vue组件作为国内新闻列表项
2025-08-30 13:50:28 +08:00
zzp 77029700ed feat(tabbar): 添加国内资讯标签页并调整标签栏顺序
- 新增国内资讯标签页,包含激活和非激活状态图标
- 调整标签栏顺序,将我的页面与国内资讯位置互换
- 优化标签栏条件渲染逻辑,使用v-else简化代码
2025-08-28 11:41:03 +08:00
zzp 14fa72f32b fix: 修复分享路径错误并优化代码格式
修复indexNewsInfo.vue中分享路径的拼写错误(/page/改为/pages/)
在rankDetail.vue中添加返回功能
优化多个组件的代码格式和样式
2025-08-28 11:32:34 +08:00
zzp aada0e1c2c feat(rankDetail): 重构排行详情页并添加搜索功能
- 重构排行详情页UI,添加顶部背景图和搜索框
- 实现搜索功能并添加搜索确认事件
- 添加下拉刷新功能
- 优化标题显示逻辑,修复切片显示问题
- 调整列表项样式,添加阅读数等统计信息
- 添加登录状态检查跳转逻辑
2025-08-27 17:30:50 +08:00
zzp 21f418ff6f feat: 更新用户界面和导航逻辑
- 修改Tabbar标签文本从"全部"到"我的"
- 移除首页tab索引的本地存储
- 更新未登录时的跳转链接到mini登录页
- 为详情页添加分享到朋友圈功能
- 优化用户中心组件格式和隐私协议入口
- 添加导航前检查登录状态逻辑
2025-08-26 18:04:38 +08:00
zzp e35509eda8 fix: 更新API基础URL并优化列表项显示逻辑
- 将API基础URL从HTTP切换到HTTPS并更新路径
- 根据登录状态模糊显示部分列表内容
- 优化列表项标题显示格式
2025-08-26 15:34:27 +08:00
zzp 9e337565a5 fix(config): 更新baseUrlDataV配置为测试环境地址
将baseUrlDataV从生产环境地址更改为测试环境地址,便于开发调试
2025-08-26 08:47:48 +08:00
zzp 1ac4d39e91 fix: 修复登录状态判断及样式模糊问题
refactor: 优化代码格式和组件结构

feat: 添加点击登录跳转功能

style: 调整搜索框宽度和样式

chore: 更新API基础URL配置
2025-08-20 13:30:34 +08:00
34701892@qq.com 21662afa47 fix(config): 更新baseUrl为新的服务器地址
将本地测试地址更改为生产环境服务器地址,确保应用连接到正确的API服务
2025-08-18 13:06:39 +08:00
34701892@qq.com 650d5aefcc feat: 添加微信分享功能并优化搜索页面样式
- 新增微信分享API接口和分享功能实现
- 修改请求头中phone字段为userPhone
- 优化搜索页面UI和交互逻辑
- 调整文章列表样式和分享按钮功能
- 添加搜索页面导航栏和返回功能
2025-08-18 13:05:24 +08:00
34701892@qq.com f0da0b3760 feat: 添加隐私协议链接和用户协议勾选验证
fix: 修复文章详情页路由错误问题
refactor: 优化手机号显示逻辑和存储方式
style: 调整页面布局样式和导航栏固定定位
perf: 优化排行榜数据显示和格式化逻辑
2025-08-18 09:49:28 +08:00
34701892@qq.com a70819522e feat: 添加登录状态相关UI改进和样式优化
- 在minihome页面添加z-index确保元素层级
- 修改rankDetail页面的标签颜色样式
- 在indexNewsInfo和RankListMini组件中添加登录状态判断
- 为未登录用户添加模糊效果和登录提示
- 新增登录解锁提示组件
2025-08-17 19:52:46 +08:00
34701892@qq.com f306788d8c refactor(登录流程): 优化登录退出逻辑和页面跳转
- 将 mine.vue 和 mineMini.vue 的退出登录逻辑简化为清除存储并触发事件
- 修改登录成功后的跳转方式为 redirectTo 避免页面堆叠
- 移除 Tabbar.vue 中多余的"全部"选项
- 在 minihome/index.vue 中处理退出登录后的 tab 切换
- 默认展开 RankListMini 并移除展开/收起功能
2025-08-17 18:57:49 +08:00
34701892@qq.com b899101cf9 feat: 优化导航栏样式并添加页面状态持久化
- 修改Navbar箭头颜色为#333
- 在minihome页面添加tabIndex状态持久化
- 为subscribed和bookmark页面添加顶部导航占位
- 调整bookmark页面tabs样式和布局
- 简化mineMini组件代码格式
2025-08-17 18:49:44 +08:00
34701892@qq.com e9f2799c13 fix: 修复请求头中错误的phone字段并优化登录流程
修复utils/index.ts中请求头phone字段错误使用token的问题
优化login/indexMini.vue登录成功后的跳转逻辑
添加comment/indexMini.vue组件并修复Tabbar.vue的标签闭合问题
2025-08-17 18:29:06 +08:00
34701892@qq.com 70aa8e6f58 Merge branch 'mini' of https://gitee.com/zzpaym/zhongzheng-sample-clear-h5 into mini 2025-08-17 17:59:21 +08:00
34701892@qq.com 14aec795a6 refactor(mini): 移除mock数据引用并优化mini组件样式
移除多个组件中对mock数据的引用,改用真实数据源
优化Navbar组件样式,移除冗余的top88视图
修复Tabbar组件中图片URL的拼写错误
调整mineMini组件头部样式和padding
优化minihome页面滚动时的导航栏背景色变化
2025-08-17 17:59:04 +08:00
zzp b303828164 feat(login): 添加微信授权登录功能
- 新增微信授权API接口
- 替换立即进入按钮为微信获取手机号按钮
- 实现微信授权登录流程,包括获取code和用户信息
- 处理授权成功后的token和用户信息存储
2025-08-17 17:26:24 +08:00
zzp 13e67b8aa9 feat(login): 添加隐私政策点击事件处理
refactor: 移除mock数据引用并优化代码格式

style: 统一代码缩进和换行格式
2025-08-17 17:09:04 +08:00
zzp b3cd7aff28 feat(login): 添加迷你登录页面并更新相关组件
- 新增迷你登录页面 indexMini.vue
- 更新 Tabbar.vue 组件样式和图片路径
- 修改 mineMini.vue 组件跳转逻辑至迷你登录页
2025-08-17 11:08:27 +08:00
34701892@qq.com 1ba80c041c feat: 实现导航栏高度计算及多页面适配
refactor: 优化请求拦截器处理逻辑

style: 更新Tabbar组件样式及图标资源

feat(rank): 添加排行榜前三名特殊样式图标

fix(detail): 修复GET请求参数处理问题

feat(home): 新增首页顶部背景及搜索区域

refactor(util): 移除无用代码并添加日志调试

fix(api): 修正行业和概念标签请求参数格式

feat(minihome): 实现首页轮播图及样式调整
2025-08-15 13:44:27 +08:00
34701892@qq.com 126f48d883 feat(导航): 添加顶部标签页组件并优化导航栏样式
- 新增Tabs组件实现资讯分类切换功能
- 修改Navbar样式使其固定在顶部并添加背景色
- 替换RankListMini中的token验证方式为uni.getStorageSync
2025-08-13 13:49:54 +08:00
34701892@qq.com 761758accf feat(minihome): 实现首页tab切换功能并添加我的页面
- 在Tabbar组件中添加tabChange事件发射
- 修改minihome页面支持tab切换显示不同内容
- 新增mineMini组件作为我的页面
- 调整pages.json路由顺序
- 修复utils中header拼写错误
2025-08-13 13:21:40 +08:00
34701892@qq.com 557aa97a99 style(Tabbar): 为底部导航栏添加白色背景色
提升底部导航栏的可视性,使其在浅色背景下更清晰可见
2025-08-13 12:25:12 +08:00
34701892@qq.com a972754e81 压缩体积 2025-08-13 12:24:21 +08:00
34701892@qq.com b94cba2379 static放对象存储 2025-08-13 12:18:25 +08:00
34701892@qq.com 784e1c2be1 缩小小程序体积 2025-08-13 12:04:58 +08:00
34701892@qq.com 5934ff0b93 本地图片改对象存储 2025-08-13 11:53:14 +08:00
202 changed files with 4540 additions and 1200 deletions

View File

@ -5,7 +5,7 @@ ENV = development
# VITE_API_URL = http://123.60.153.169:8040/apih5
# VITE_API_URL = https://4155gf93ll13.vicp.fun/apih5
# VITE_API_URL = http://123.60.79.143:8041/apih5
# VITE_API_URL =http://ukfba3.natappfree.cc/apih5
# VITE_API_URL = http://192.168.3.38:8040/apih5
VITE_API_URL = https://cankao.cs.com.cn/apih5
VITE_API_DATAV_URL = https://cankao.cs.com.cn/zzck_datav

Binary file not shown.

View File

@ -1,7 +1,6 @@
<!DOCTYPE html>
<html>
<head>
<head>
<meta charset="UTF-8" />
<script>
var coverSupport =
@ -14,6 +13,9 @@
'" />'
);
</script>
<!-- <script type="text/javascript" src="//res.wx.qq.com/open/js/jweixin-1.6.0.js"></script> -->
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<!-- <script
type="text/javascript"
src="//res.wx.qq.com/open/js/jweixin-1.6.0.js"
@ -27,11 +29,12 @@
<title></title>
<!--preload-links-->
<!--app-context-->
</head>
</head>
<body>
<body>
<div id="app"><!--app-html--></div>
<script type="module" src="/src/main.ts"></script>
<!-- <script type="text/javascript">
var link = location.href.split("#")[0];
console.log("🚀 ~ link:", link);
@ -107,6 +110,5 @@
error: function (error) {},
});
</script> -->
</body>
</body>
</html>

7
package-lock.json generated
View File

@ -28,6 +28,7 @@
"echarts": "^5.6.0",
"js-cookie": "^3.0.5",
"js-md5": "^0.8.3",
"jweixin-module": "^1.6.0",
"pinia": "^2.0.36",
"qs": "^6.11.2",
"vue": "^3.2.45",
@ -9510,6 +9511,12 @@
"graceful-fs": "^4.1.6"
}
},
"node_modules/jweixin-module": {
"version": "1.6.0",
"resolved": "https://registry.npmmirror.com/jweixin-module/-/jweixin-module-1.6.0.tgz",
"integrity": "sha512-dGk9cf+ipipHmtzYmKZs5B2toX+p4hLyllGLF6xuC8t+B05oYxd8fYoaRz0T30U2n3RUv8a4iwvjhA+OcYz52w==",
"license": "ISC"
},
"node_modules/kleur": {
"version": "3.0.3",
"resolved": "https://registry.npmmirror.com/kleur/-/kleur-3.0.3.tgz",

View File

@ -2,10 +2,10 @@
"name": "uni-preset-vue",
"version": "0.0.1",
"scripts": {
"dev:mp-weixin": "uni -p mp-weixin",
"dev:h5": "uni",
"build:h5": "uni build",
"dev:h5:ssr": "uni --ssr",
"dev:mp-weixin": "uni -p mp-weixin",
"dev:mp-alipay": "uni -p mp-alipay",
"dev:app": "uni -p app",
"dev:app-android": "uni -p app-android",
@ -59,6 +59,7 @@
"echarts": "^5.6.0",
"js-cookie": "^3.0.5",
"js-md5": "^0.8.3",
"jweixin-module": "^1.6.0",
"pinia": "^2.0.36",
"qs": "^6.11.2",
"vue": "^3.2.45",

View File

@ -16,6 +16,7 @@ onHide(() => {
<style lang="scss">
/* 注意要写在第一行同时给style标签加入lang="scss"属性 */
@import "@/uni_modules/uview-plus/index.scss";
#app,
uni-app,
uni-page,

View File

@ -1,4 +1,4 @@
import request from "@/utils";
import request from "@/utils/index";
/**
*
@ -7,10 +7,9 @@ import request from "@/utils";
* @returns
*/
export const fetchArticleDetail = (data: any) => {
return request.get(`/news/detail/${data.id}`);
return request.get(`/news/detail/${data.id}?phone=${data?.phone || null}`);
};
/**
*
* @param data
@ -33,10 +32,11 @@ export const fetchArticleFavorate = (data: any) => {
// 热门行业
export const getListByTagIndustry = (data: any) => {
return request.get(`/news/list/industry?name=${data.name}`);
console.log("🚀 ~ getListByTagIndustry ~ data:", data);
return request.get("/news/list/industry", { name: data.name });
};
// 概念标签
export const getListByTag = (data: any) => {
return request.get(`/news/list/tag?name=${data.name}`);
return request.get("/news/list/tag", { name: data.name });
};

View File

@ -62,3 +62,22 @@ export const searchNews = (data: any) => {
return Request.post("/news/search", data);
};
// 微信授权
export const doWxAuth = (data: any) => {
return Request.post("/common/auth", data);
};
// 微信分享
export const doShare = (data: any) => {
return Request.post("/user/share", data);
};
// 国内资讯列表
export const getDomestic = (data: any) => {
return Request.get("/news/domestic", data);
};
// 国内资讯详情
export const getDomesticDetail = (data: any) => {
return Request.get(`/news/domestic/${data.id}`);
};

View File

@ -17,7 +17,8 @@ export const getConceptCount = (data: any) => {
// 概念标签贴标
export const getTopNews = (data: any) => {
return request.get("/top_news_h5_d", data);
// return request.get("/top_news_h5_d", data);
return request.get("/top_news_release_h5_d", data);
};
// 热门行业top10
@ -34,3 +35,8 @@ export const getTopConcept_d = (data: any) => {
export const getNews_cnt_d = (data: any) => {
return request.get("/news_cnt_d", data);
};
// 概念标签贴标
export const getTopNewsAll = (data: any) => {
return request.get("/top_news_release_h5_all", data);
};

View File

Before

Width:  |  Height:  |  Size: 674 B

After

Width:  |  Height:  |  Size: 674 B

View File

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 555 B

View File

@ -1,15 +0,0 @@
@font-face {
font-family: "SourceHanSansCN-Regular";
font-style: normal;
src: url("./PingFang_Medium.ttf") format("opentype");
}
@font-face {
font-family: "SourceHanSansCN-Medium";
font-style: normal;
src: url("./SourceHanSansCN-Medium.otf") format("opentype");
}
html,
body {
font-family: "SourceHanSansCN-Regular";
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 989 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 233 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 994 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 646 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 851 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 701 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 470 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 707 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 860 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 800 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 639 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 416 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 839 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 388 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 580 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 735 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 892 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 502 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,11 +1,6 @@
<template>
<view class="list">
<view
v-for="(item, index) in props.data"
:key="index"
class="item"
>
<view v-for="(item, index) in props.data" :key="index" class="item">
<!-- 标题 start -->
<!-- <text class="title" v-html="item.title">{{ item.title }}</text> -->
<text @click="handleClick(item)" class="title" v-html="item.MarkInRedTitle || item.title"></text>
@ -13,20 +8,16 @@
<!-- 内容 start -->
<view class="r_content">
<image src="@/static/icon_act_lt.png" class="title_icon"></image>
<image src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/static/icon_act_lt.png" class="title_icon">
</image>
<text @click="handleClick(item)" class="content" v-html="item.MarkInRedContent || item.content"></text>
<!-- <text @click="handleClick(item)" class="content">{{ item.content }}</text> -->
<!-- 需要付费锁 start -->
<view class="need_login" v-if="item.needpay" @click="handleSubListItem(item)">
<image src="@/static/icon_lock.png" class="need_icon"></image>
<image src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/static/icon_lock.png" class="need_icon">
</image>
<text>订阅后解锁全文</text>
<u-icon
name="arrow-right"
color="#fff"
size="10"
style="margin-left: 10rpx"
bold
></u-icon>
<u-icon name="arrow-right" color="#fff" size="10" style="margin-left: 10rpx" bold></u-icon>
</view>
<!-- 需要付费锁 end -->
</view>
@ -54,11 +45,11 @@ const props = defineProps({
//
data: {
type: Object,
default: () => {},
default: () => { },
},
});
console.log("props.data", props.data)
onBeforeMount(() => {});
onBeforeMount(() => { });
//
const handleSubListItem = (item) => {

View File

@ -1,75 +1,40 @@
<template>
<view class="hot-industry-container">
<u-skeleton
rows="5"
title
loading
style="margin-bottom: 30rpx"
v-if="loading"
></u-skeleton>
<u-skeleton rows="5" title loading style="margin-bottom: 30rpx" v-if="loading"></u-skeleton>
<!-- 行业列表 -->
<view class="industry-list" v-else>
<view
v-for="(item, index) in industryList"
:key="index"
class="industry-item"
:style="getItemBgStyle(index)"
@click="goDetail(item, index)"
>
<view v-for="(item, index) in industryList" :key="index" class="industry-item" :style="getItemBgStyle(index)"
@click="goDetail(item, index)">
<!-- 这里预留图标位置可自行补充 <image :src="item.icon" class="industry-icon" /> -->
<view
style="
<view style="
position: absolute;
top: 0;
z-index: 999;
display: flex;
align-items: center;
height: 100%;
"
>
<img
src="@/assets/zixun/ranking_icon_1_1.png"
class="top3numbk"
v-if="index < 3 && index == 0"
/>
<img
src="@/assets/zixun/ranking_icon_2_2.png"
class="top3numbk"
v-else-if="index < 3 && index == 1"
/>
<img
src="@/assets/zixun/ranking_icon_3_3.png"
class="top3numbk"
v-else-if="index < 3 && index == 2"
/>
">
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_icon_1_1.png" class="top3numbk"
v-if="index < 3 && index == 0" />
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_icon_2_2.png" class="top3numbk"
v-else-if="index < 3 && index == 1" />
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_icon_3_3.png" class="top3numbk"
v-else-if="index < 3 && index == 2" />
<text class="rank" v-else>{{ index + 1 }}</text>
<text class="industry-name">{{ item.content }}</text>
</view>
<img
src="@/assets/zixun/ranking_bg_1.png"
class="top3bk"
v-if="index < 3 && index == 0"
/>
<img
src="@/assets/zixun/ranking_bg_2.png"
class="top3bk"
v-if="index < 3 && index == 1"
/>
<img
src="@/assets/zixun/ranking_bg_3.png"
class="top3bk"
v-if="index < 3 && index == 2"
/>
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_bg_1.png" class="top3bk"
v-if="index < 3 && index == 0" />
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_bg_2.png" class="top3bk"
v-if="index < 3 && index == 1" />
<img src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/zixun/ranking_bg_3.png" class="top3bk"
v-if="index < 3 && index == 2" />
</view>
</view>
<LoginPopup
:show="LoginShow"
@handlePopupClose="handlePopupClose"
@handlePopupSuccessCallback="handlePopupSuccessCallback"
@handlePopupErrorCallback="handlePopupErrorCallback"
/>
<LoginPopup :show="LoginShow" @handlePopupClose="handlePopupClose"
@handlePopupSuccessCallback="handlePopupSuccessCallback" @handlePopupErrorCallback="handlePopupErrorCallback" />
</view>
</template>
@ -182,27 +147,32 @@ const handlePopupErrorCallback = () => {
.hot-industry-container {
padding: 10px;
}
.header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
}
.title {
font-size: 16px;
font-weight: bold;
color: #333;
}
.view-all {
font-size: 14px;
color: #999;
text-decoration: underline;
}
.industry-list {
display: flex;
flex-direction: column;
gap: 8px;
}
.industry-item {
display: flex;
align-items: center;
@ -210,11 +180,13 @@ const handlePopupErrorCallback = () => {
position: relative;
height: 74rpx;
}
.industry-icon {
width: 24px;
height: 24px;
margin-right: 8px;
}
.rank {
margin-left: 30rpx;
@ -227,6 +199,7 @@ const handlePopupErrorCallback = () => {
font-style: normal;
margin-right: 40rpx;
}
.industry-name {
font-family: PingFangSC, PingFang SC;
font-weight: 400;

View File

@ -4,8 +4,10 @@
<view class="homeTopContainer">
<!-- 搜索框 -->
<view class="sreach">
<image src="@/static/logo_mini.png" class="sreach_icon" @click="messageShow = true"></image>
<u-input v-model="keyWord" prefixIcon="search" style="flex: 1" placeholder="搜索资讯" placeholderClass="search_placeholder" class="sreach_input" :border="false" @confirm="goSreach" />
<image src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/static/logo_mini.png" class="sreach_icon"
@click="messageShow = true"></image>
<u-input v-model="keyWord" prefixIcon="search" style="flex: 1" placeholder="搜索资讯"
placeholderClass="search_placeholder" class="sreach_input" :border="false" @confirm="goSreach" />
</view>
<!-- 渐变的背景 -->
@ -15,7 +17,7 @@
<view class="headerBanner"> </view>
<!-- 搜索框 -->
<!-- <view class="sreach">
<image src="@/static/logo_mini.png" class="sreach_icon" @click="messageShow = true"></image>
<image src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/static/logo_mini.png" class="sreach_icon" @click="messageShow = true"></image>
<u-input v-model="keyWord" prefixIcon="search" style="flex: 1" placeholder="搜索资讯" placeholderClass="search_placeholder" class="sreach_input" :border="false" @confirm="goSreach" />
</view> -->
@ -24,7 +26,7 @@
<!-- <view class="r_tab">
<view v-for="(item, index) in colList" :key="item.id" class="tab_item" @click="handleTabsClick(item)">
<text :style="{ fontWeight: index == columnIndex ? 'bold' : '' }"> {{ item.name }}</text>
<image src="@/static/bk_tab.png" class="bk_tab" v-if="index == columnIndex"></image>
<image src="https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/static/bk_tab.png" class="bk_tab" v-if="index == columnIndex"></image>
<view class="badge" v-if="isBadeg && index !== 1">
<u-badge value="new"></u-badge>
</view>
@ -66,7 +68,8 @@
</view>
<view class="content">
<KnowEarlier @handleUpdateData="handleUpdateData" :isNewFlash="isNewFlash" :data="newsFastList" v-if="columnIndex === 0" />
<KnowEarlier @handleUpdateData="handleUpdateData" :isNewFlash="isNewFlash" :data="newsFastList"
v-if="columnIndex === 0" />
</view>
</view>
</view>
@ -74,7 +77,9 @@
<u-overlay :show="overlayShow" zIndex="101" @click="overlayShow = false"></u-overlay>
<!-- <KnowEarlier @handleUpdateData="handleUpdateData" :isNewFlash="isNewFlash" :data="newsFastList" v-if="columnIndex === 0" /> -->
<WorldlyAffairs @changelockType="changelockType" @handleSub="handleSub" :finish="finish" v-if="columnIndex === 1" :column="tagsList[columnIndex]" :bannerList="bannerList" :titleCardList="titleCardList" :worldNewsList="worldNewsList" @onload="onload" />
<WorldlyAffairs @changelockType="changelockType" @handleSub="handleSub" :finish="finish" v-if="columnIndex === 1"
:column="tagsList[columnIndex]" :bannerList="bannerList" :titleCardList="titleCardList"
:worldNewsList="worldNewsList" @onload="onload" />
</view>
</template>
@ -85,7 +90,7 @@ import KnowEarlier from "@/pages/knowEarlier/index.vue";
import WorldlyAffairs from "@/pages/worldlyAffairs/index.vue";
import { getNewsFast, checkNews, getNewsColumn, getNewsTag, getNewsList, unlockColumn } from "@/api";
import { Session } from "@/utils/storage";
import down from "@/assets/images/down.png";
import down from "https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/images/down.png";
import VipHeader from "./vipHeader";
import { scrollToTop, formatTime } from "@/utils/util.ts";
import { useShareStore } from "@/stores/shareStore";
@ -99,7 +104,7 @@ const props = defineProps({
},
columnState: {
type: Object,
default: () => {},
default: () => { },
},
});
@ -462,8 +467,10 @@ onUnmounted(() => {
background-color: #f6f6f6;
box-sizing: border-box;
overflow-y: auto;
.homeTopContainer {
position: relative;
.sreach {
width: 100%;
display: flex;
@ -471,17 +478,19 @@ onUnmounted(() => {
box-sizing: border-box;
padding: 20rpx 30rpx;
gap: 30rpx;
background-image: url(@/assets/images/vip_header_search_bg.png);
background-image: url(https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/images/vip_header_search_bg.png);
background-size: cover;
position: fixed;
left: 0;
top: 0;
z-index: 2;
.sreach_icon {
width: 78rpx;
height: 60rpx;
margin-top: 3rpx;
}
.sreach_input {
background-color: #fff;
border-radius: 36rpx;
@ -500,7 +509,7 @@ onUnmounted(() => {
top: 0;
width: 100%;
height: 366rpx;
background-image: url(@/assets/images/vip_header_content_bg.png);
background-image: url(https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/images/vip_header_content_bg.png);
background-size: cover;
margin-top: 100rpx;
}
@ -521,12 +530,14 @@ onUnmounted(() => {
box-sizing: border-box;
padding-top: 20rpx;
width: 100%;
.tabsList {
display: flex;
// background-color: aqua;
background: linear-gradient(90deg, #ffc795 0%, #ffad9a 100%);
border-top-left-radius: 32rpx;
border-top-right-radius: 32rpx;
.tab_item {
width: 52%;
height: 126rpx;
@ -535,6 +546,7 @@ onUnmounted(() => {
box-sizing: border-box;
padding-top: 24rpx;
color: #fff;
&.active {
border-top-left-radius: 32rpx;
border-top-right-radius: 32rpx;
@ -554,6 +566,7 @@ onUnmounted(() => {
top: 0;
margin-top: 106rpx;
backdrop-filter: blur(60rpx);
// z-index: ;
.newsBg {
height: 79.52rpx;
@ -563,14 +576,16 @@ onUnmounted(() => {
position: absolute;
left: 0;
top: 0;
.newsFontBg {
width: 255.78rpx;
height: 79.52rpx;
background-image: url(@/assets/images/newFontBg.png);
background-image: url(https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/images/newFontBg.png);
background-size: cover;
}
}
.content{
.content {
max-height: calc(100vh - 300rpx);
// overflow-y: auto
// height: 100vh;
@ -580,6 +595,7 @@ onUnmounted(() => {
}
}
}
// .index-wrap {
// min-height: calc(100vh - 130rpx);
// background-color: #f6f6f6;
@ -638,57 +654,57 @@ onUnmounted(() => {
// }
// //
// .tabsListContainer {
// box-sizing: border-box;
// padding-right: 60rpx;
// padding-bottom: 12rpx;
// display: flex;
// overflow-x: auto;
// position: relative;
// // background-color: red;
// margin-top: 30rpx;
// .tabsListContainer {
// box-sizing: border-box;
// padding-right: 60rpx;
// padding-bottom: 12rpx;
// display: flex;
// overflow-x: auto;
// position: relative;
// // background-color: red;
// margin-top: 30rpx;
// .tabsList {
// display: flex;
// overflow-x: auto;
// .tabsList {
// display: flex;
// overflow-x: auto;
// .tabsItem {
// font-size: 12px;
// color: #595959;
// box-sizing: border-box;
// padding: 6rpx 20rpx;
// border: 1px solid #dbdbdb;
// margin-right: 21rpx;
// border-radius: 99rpx;
// flex-shrink: 0;
// .tabsItem {
// font-size: 12px;
// color: #595959;
// box-sizing: border-box;
// padding: 6rpx 20rpx;
// border: 1px solid #dbdbdb;
// margin-right: 21rpx;
// border-radius: 99rpx;
// flex-shrink: 0;
// &.active {
// background-color: rgba(255, 208, 212, 0.4);
// border-color: rgba(255, 208, 212, 0.4);
// color: #e7303f;
// }
// }
// }
// &.active {
// background-color: rgba(255, 208, 212, 0.4);
// border-color: rgba(255, 208, 212, 0.4);
// color: #e7303f;
// }
// }
// }
// .downContainer {
// position: absolute;
// right: 0;
// top: 50%;
// height: 40rpx;
// transform: translateY(-50%);
// background-color: #f6f6f6;
// padding: 3rpx 15rpx 15rpx 15rpx;
// display: flex;
// align-items: center;
// justify-content: center;
// background-image: url(@/assets/images/overlay_world.png);
// .downContainer {
// position: absolute;
// right: 0;
// top: 50%;
// height: 40rpx;
// transform: translateY(-50%);
// background-color: #f6f6f6;
// padding: 3rpx 15rpx 15rpx 15rpx;
// display: flex;
// align-items: center;
// justify-content: center;
// background-image: url(https://cankao.obs.cn-east-3.myhuaweicloud.com/mini/images/overlay_world.png);
// .downPng {
// width: 30rpx;
// height: 30rpx;
// }
// }
// }
// .downPng {
// width: 30rpx;
// height: 30rpx;
// }
// }
// }
// .tabsPopup {
// width: 100%;
@ -889,5 +905,4 @@ onUnmounted(() => {
// position: absolute;
// width: 180rpx;
// height: 48rpx;
// }
</style>
// }</style>

Some files were not shown because too many files have changed in this diff Show More