首页 > 其他分享 >电子报纸教程--部署篇

电子报纸教程--部署篇

时间:2022-12-16 22:33:16浏览次数:62  
标签:文件 教程 git -- innerHTML 仓库 ul 报纸 left


模板优化

侧边栏优化

在第二篇的视频中,详解了如何更改侧边栏的链接内容。当时是在所有页面中都覆写了侧边栏信息,这导致了一个维护的问题。即每当新增一期报纸内容时,需要修改以前所有的文件,内容越多工作量越大,显然这不太合适。

解决的办法也很简单,在原Html中保持布局结构,里面的内容通过JavaScript来进行动态填充。

首先给需要填充内容的列表取一个id​​right​

<ul id="right" data-role="listview" data-inset="true" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
</ul>

然后编写js文件​​right_panel.js​

//这里修改往期内容,新的报纸追加即可
var ul = document.getElementById("right");
ul.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./报纸302期_html/index.html" data-rel="close" οnclick="slideTo(1)" class="ui-btn">第302期</a></li>';
ul.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./报纸303期_html/index.html" data-rel="close" οnclick="slideTo(2)" class="ui-btn">第303期</a></li>';
ul.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./报纸304期_html/index.html" data-rel="close" οnclick="slideTo(3)" class="ui-btn">第304期</a></li>';
ul.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./报纸305期_html/index.html" data-rel="close" οnclick="slideTo(3)" class="ui-btn">第305期</a></li>';

最后在html中进行引入

<!-- 往期内容信息 -->
<script src="./right_panel.js"></script>

这样,以后只需修改一个文件内容,就能做到全局适配了。

电子报纸教程--部署篇_Html

同理,我们可以对左边的侧边栏进行优化,在每一期文件夹下新建一个​​left_panel.js​​文件

// 左侧边栏信息配置文件
var ul_left = document.getElementById("left");
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./index.html" data-rel="close" οnclick="slideTo(1)" class="ui-btn">头版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./A2.html" data-rel="close" οnclick="slideTo(2)" class="ui-btn">第二版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./A3.html" data-rel="close" οnclick="slideTo(3)" class="ui-btn">第三版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./A4.html" data-rel="close" οnclick="slideTo(4)" class="ui-btn">第四版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./B1.html" data-rel="close" οnclick="slideTo(5)" class="ui-btn">第五版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./B2.html" data-rel="close" οnclick="slideTo(6)" class="ui-btn">第六版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./B3.html" data-rel="close" οnclick="slideTo(7)" class="ui-btn">第七版</a></li>';
ul_left.innerHTML += '<li data-icon="false" class="ui-first-child"><a href="./B4.html" data-rel="close" οnclick="slideTo(8)" class="ui-btn">第八版</a></li>';

这样,链接都无需修改就自动适配了。

访问量统计

之前的版本模仿微信的样式,在每篇文章下标记了阅读量,但是是个静态的假数据。如果需要真实的访问数据,大致上可以有两种实现思路。

1、自写后端,这样还需要自己搭建数据库来存储数据,对于我们这个简单展示类界面来说,过于繁琐。

2、采用第三方统计工具,这供了一些图片样式,可以把真实的访问量以图片的形式进行插入。

在html中,可以很方便的调用它获取访问量图片:

<span style="margin-top: 6px; position:relative;">
<a href="https://www.mfwztj.com/" target="_blank"><img src="https://www.mfwztj.com/hit.php?id=zxpfc&nd=6&style=3" border="0" alt="网站计数器"></a>
</span>

但缺点也很明显,每一个页面要统计访问量都必须给定一个链接,并且该链接必须保持不变。如果更换域名,需要重新获取统计接口,因此,在本版本中未实际采用。

注:在vscode中,需要安装Live Server拓展插件,以本地网络形式进行网页浏览才会显示这个图片。

网页部署

进入正题,有了静态文件之后,该如何部署。这里给出三种可供参考的方案。

方案一:GitHub Page

GitHub提供了免费的静态文件部署方案,但国外的服务器访问过于缓慢。优点是成本不高,支持自定义域名解析,可以使用CDN加速来提升访问速度。

方案二:使用云服务器

该方案购买第三方的云服务器,我曾经用阿里云服务器搭建过,具体的流程可以参见我的这篇博文​​从零开始用阿里云服务器搭建网页​​

该方案访问速度最快,并且搭建自由,可以支持一些动态页面的部署操作。

缺点也很明显:成本较高。目前阿里云学生机已经买不到了,一台最低配置的服务器平均价格也需要小几百一年。并且云服务器有个规则:购买便宜,续费贵。如果打算长期用,建议多买几年,以免反复经历复杂的部署流程。

方案三:Gitee Page

Gitee即码云,仿照了Github,也提供了免费的静态文件部署方案,一键部署,操作简单,且国内的服务器访问速度比Github快一些。但需要一天左右的时间等待实名认证。目前该项目就已在码云上完成部署,下面来详解一下大致流程。

码云部署流程

码云地址:​​https://gitee.com/​

首先注册一个账号,不必细说。

然后新建一个仓库

电子报纸教程--部署篇_html_02

仓库名称随便取,路径要想一想,后面部署后的url会和路径挂钩。

电子报纸教程--部署篇_git_03

新建完仓库后,有两种方式可以上传文件。

第一种方式:直接在网页中提交上传

电子报纸教程--部署篇_git_04

操作比较简单,但是一次性最多上传20个文件。

第二种方式:利用git工具

git相关理论/软件下载可以看我总结的这篇博文​​零基础1小时上手git​​

1、下载git bush工具。

2、绑定gitee账号。

3、关联远程仓库。

4、上传文件到暂存区

使用命令:​​git add .​

5、上传文件到本地仓库

使用命令:​​git commit -m "备注"​

6、上传文件到远程仓库

使用命令:​​git push​

默认是上传到master分支

上传完之后,可以看到仓库里已经有了自己的文件,然后就可以开始一键部署。

进入Gitee Pages 界面:

电子报纸教程--部署篇_ide_05

点击更新即可

电子报纸教程--部署篇_html_06

出现的url就部署成功,比如我的访问地址为​​https://zstar1003.gitee.io/xdxsb​

报社成员操作

上面写了码云部署的全流程,因为仓库我已经创建完成,因此后续更新维护的操作会简单一些,下面介绍如何进行团队协作。

Step1:仓库管理员权限授予

首先我会通过链接或者直接添加的方式,邀请协作者成为仓库管理员,这样就可以有权上传文件到本仓库(团队成员最多5人)。

电子报纸教程--部署篇_html_07

Step2:仓库克隆

在这一步,需要把整个仓库下载到本地,有两种方式。

第一种方式,下载zip文件。

电子报纸教程--部署篇_Html_08

这种方式比较简单,通过这种方式,后续无需使用git工具,直接上传文件即可。但要注意文件上传位置,以及修改文件时要把之前的文件给删除。更推荐第二种方式。

第二种方式,利用git工具。

首先安装好git工具,下载安装方式参见前面提到的教程。

然后在本地新建一个文件夹->右键->git bash here

电子报纸教程--部署篇_javascript_09

输入命令 ​​git clone xxx.git​

xxx.git为远程仓库地址,可在仓库界面处复制。

电子报纸教程--部署篇_Html_10

克隆好后,会生成一个.git文件(该文件是隐藏文件夹,需要在查看种勾选隐藏文件夹才能看到),该文件存储了本地仓库和远程仓库的连接信息。之后,对文件进行修改后,按部署流程中的上传文件即可。

要点注意

1、码云还有个小问题,部署时会检测文章内容,如果出现违禁词,会无法部署成功。因为这个原因,我也删除了部分未过审文章,因此在审稿时需要提前进行文字审阅。

电子报纸教程--部署篇_html_11

这里推荐使用​​夸克查词​​,它会检测出违禁词和敏感词。违禁词必须进行修改,敏感词没有关系。

2、上传完文件后,要重新部署更新。由于浏览器的缓存机制,更新完之后无法查看到更新内容,以谷歌浏览器为例,需要清除浏览器缓存再看效果。

电子报纸教程--部署篇_Html_12


标签:文件,教程,git,--,innerHTML,仓库,ul,报纸,left
From: https://blog.51cto.com/u_15762365/5948685

相关文章

  • 进制转换【思维】(巧法)
     基础练习十六进制转十进制 时间限制:1.0s 内存限制:512.0MB锦囊1锦囊2锦囊3问题描述从键盘输入一个不超过8位的正......
  • 精选TOP32机器学习开源项目
    精选的Top 32的机器学习开源项目,整理自MybridgeAI:1.FastText:快速文本表示和文本分类库(Github上有11786颗星,贡献者FacebookResearch)源码链接:​​https://github.com/face......
  • 推荐几个精致的web UI框架及常用前端UI框架
    以下是几个精致的webUI框架1.AliceuiAliceui是支付宝的样式解决方案,是一套精选的基于spm生态圈的样式模块集合,是Arale的子集,也是一套模块化的样式命名和组织规范,是......
  • 十个值得一试的开源深度学习框架
    Google开源了TensorFlow(​​GitHub​​),此举在深度学习领域影响巨大,因为Google在人工智能领域的研发成绩斐然,有着雄厚的人才储备,而且Google自己的Gmail和搜索引擎都在使用自......
  • 40 个超棒的免费 Bootstrap HTML5 网站模板
     ​​​​Bootstrap是快速开发Web应用程序的前端工具包。它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格,网......
  • nginx 转发处理301,302 跳转
    ···如果后方服务器返回302,此时,如果不进行特殊处理,客户端也收到302,但是如果客户端访问不到内部的服务器就要让nginx主动跟随302的地址,把内容取给我们,这需要进行如下设置......
  • 设计模式--行为型模式
    行为型模式模板模式在含有继承结构的代码中,模板方法模式是非常常用的。用一个统一的父类实现定义所有的方法和接口。不同的子类来完成自己具体的实现。父类定义了骨架(调......
  • 200008 计算柱的土方量和钢筋量已知集中标注
    点击查看代码<?phpheader('Content-Type:text/html;charset=utf-8');define('ROOT',$_SERVER['DOCUMENT_ROOT']);includeROOT.'/assets/php/head.php';$tit='......
  • 基础操作命令
    搜索命令find其命令格式为find路径[选项]文件名选项常用参数-name-inamesizetypeusergroup-name表示按照文件名进行搜索,区分大小写-iname表示按照......
  • 文件与目录管理
    文件与目录管理目录文件与目录管理一、Linux和Windows系统目录区别二、目录与路径三、常用目录处理命令ls列出目录及文件名cd切换目录pwd显示目前的目录mkdir创建......