开源博客项目Blog .NET Core源码学习(17:App.Hosting项目结构分析-5)

embedded/2024/10/18 14:16:14/

  本文学习并分析App.Hosting项目中前台页面的作品展示页面和首页页面。

作品展示页面

  作品展示页面总体上为上下布局,上方显示导航菜单,下方从左向右显示图片数据,支持放大查看图片和下载图片。整个页面使用了layui中的面包屑导航、弹出层、流加载等样式或模块,通过global.css文件设置样式,使用mixed_pic.js文件加载内容并显示wwwroot\favorite中的图片,并未与控制器类交互。
在这里插入图片描述
  面包屑导航。使用layui-breadcrumb预设类设置面包屑导航样式。
  导航菜单。使用global.css文件设置导航菜单样式。
  图片展示区。mixed_pic.js开头固化变量保存wwwroot\favorite下的图片信息,然后通过流加载方式逐个显示图片信息,并未使用模版方式设置图片信息样式,而是直接在js文件中拼接html字符串。每个图片提供查看大图按钮,调用layui的layer.photos显示大图。
  js文件。引用的mixed_pic.js专用于本页面的初始化及函数定义,主要函数已在上方说明,在此不再赘述。

首页页面

  首页页面总体布局如下图所示,整个页面使用了layui中的轮播、流加载、弹出层、模版等样式或模块,通过global.css、index.css等文件设置样式,使用index.js文件加载内容并调用HomeController和ArticleController中的相关函数获取或检索数据。
在这里插入图片描述在这里插入图片描述
  横幅。页面加载时,通过HomeController的Index函数传递给页面横幅集合信息,然后在前台使用layui的轮播组件周期性地显示横幅图片,并在index.js文件中调用carousel.render配置轮播样式。
在这里插入图片描述

  公告。页面加载时在Index.js文件中调用HomeController的Init函数获取公告集合,然后使用tipsview模版显示公告,并调用playNotice函数5秒切换一条公告信息。
  文章列表。页面加载时在Index.js文件中通过流加载方式调用ArticleController的Page函数分页显示文章列表,然后使用newsview模版显示每篇文章的图标、名称、作者、标签等信息。
  个人头像。固定内容,显示项目作者信息及交流方式。
  文章标签。页面加载时在Index.js文件中调用HomeController的Init函数获取文章标签集合,然后使用temptags模版显示标签名称及标签关联的文章数量,点击标签会跳转到文章专栏显示与标签相关的所有文章列表。
  热门文章。页面加载时在Index.js中调用HomeController的Init函数获取最热门6篇文章,然后使用hotview模板显示每条文章的基本信息链接,点击链接后会打开文章详情页面显示详细内容。
  博主介绍。固定内容,显示项目作者简介。
  友情链接。页面加载时在Index.js中调用HomeController的Init函数获取友情链接集合,然后使用linkview模板显示友情链接信息,点击链接后会跳转到对应的链接网址。
  模版定义。定义了tipsview、newsview、temptags、hotview、linkview模版供公告、文章列表、标签、热门文章、友情链接等功能调用。
  js文件。引用的Index.js专用于本页面的初始化及函数定义,主要函数已在上方说明,在此不再赘述。

参考文献:
[1]https://gitee.com/miss_you/Blog
[2]https://layui.dev/docs/2/
[3]https://animate.style/


http://www.ppmy.cn/embedded/20836.html

相关文章

音源分离|MUSIC SOURCE SEPARATION BASED ON A LIGHTWEIGHT DEEP LEARNING FRAMEWORK

一、文章摘要 音源分离(Music source separation ,MSS)旨在从一段混合音乐中提取“人声”,“鼓”,“贝斯”和“其他”音轨。虽然深度学习方法已经显示出令人印象深刻的结果,且有一个趋势是使用更大的模型去实现音源分离。但在本文…

面试经典150题——罗马数字转整数

面试经典150题 day17 题目来源我的题解方法一 哈希表方法二 优化版本 题目来源 力扣每日一题;题序:13 我的题解 方法一 哈希表 存储单独的存在的可能字符串 时间复杂度:O(n) 空间复杂度:O©。C表示单独存在的可能字符串数量…

Leetcode 17. 电话号码的字母组合

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits “23” 输出:[“a…

28.Gateway-网关过滤器

GatewayFilter是网关中提供的一种过滤器,可以多进入网关的请求和微服务返回的响应做处理。 GatewayFilter(当前路由过滤器,DefaultFilter) spring中提供了31种不同的路由过滤器工厂。 filters针对部分路由的过滤器。 default-filters针对所有路由的默认…

C#多线程之(Thread)详解与示例

文章目录 一、线程的基本概念二、C#中创建和启动线程的方法三、线程的生命周期四、线程的状态转换五、线程之间的通信机制六、线程安全的编程实践使用 ConcurrentBag 进行线程安全的数据收集 总结 本文将深入探讨C#多线程编程的核心概念,包括线程的基本概念、创建和…

探索HSE化工安全系统在化工生产中的作用

在现代工业化生产中,化工企业扮演着至关重要的角色,但与此同时,化工安全问题也备受关注。为了保障生产环境的安全,HSE化工安全系统应运而生。本文将详细介绍HSE化工安全系统的功能和优势,让您深入了解其在工业生产中的…

故障诊断 | 基于GASF-CNN的状态识别研究

概述 抗蛇行减振器作为高速动车组二系悬挂系统的关键零部件,对改善车辆运动稳定性、提高车辆系统的临界速度具有重要意义。抗蛇行减振器在高级修时需全部进行拆解维修或报废处理,若在高级修中的三、四级修时其性能尚能够满足实际使用要求,将其过早地拆解检修或者报废换新无…

短信视频提取批量工具,免COOKIE,博主视频下载抓取,爬虫

痛点:关于看了好多市面的软件,必须要先登录自己的Dy号才能 然后找到自己的COOKIE 放入软件才可以继续搜索,并且无法避免长时间使用 会导致无法正常显示页面的问题。 有没有一种方法 直接可以使用软件,不用设置的COOKIE的方法呢 …