隔壁群天天吹 Redis,我索性也装一个。本博客宿主机为 Docker 环境,用到的容器包括 PHP 容器、Nginx 容器以及 MySQL 容器,以及新增的 Redis 容器。 网络环境 本博客运行所需容器均位于同一个 Docker 桥接网络下,各个容器间可以通过容器名访问其他容器。 这样的好处是网络交互均……
Docker Redis数据库缓存配置(WordPress)
某游戏分析之从CSV配表到程序运行逻辑全过程
偶然发现这篇文章三个月前就挂上 TODO 列表了,一直没写,这次把它补上。本文主要分析了某款 Galgame 从策划配表到程序运行起来的整体流程。 热更新资源与 CSV 表 Unity 代码热更分Lua派和ILRuntime派,而资源热更大部分是AssetBundle。我要分析的这款 Galgame 也支持热……
在React中写一个回到顶部组件(back to top)
前文说过,最近在写一个基于 React + WP-Rest 的独立主题,而本文所说的回到顶部组件即是它的一部分。 原理及演示 关于Element.scrollTop,MDN 上有很好的解释: Element.scrollTop 属性可以获取或设置一个元素的内容垂直滚动的像素数。 一个元素的 scrollTop……
React函数组件使用State和生命周期方法(componentDidMount等)
对于函数组件(Function Component)来说,它没有 class 组件中的 componentDidMount、componentDidUpdate 等生命周期方法,也没有 State,但这些可以通过 React Hook 实现。 React Hook 是什么 Hook 是一个特殊的参数,它是 R……
Nginx反代Docker内部服务(以Wekan为例)
服务器上有很多 Docker 容器,它们没有设置端口映射,而是通过统一的前端 Nginx 程序反代。这样做的好处是在外部可以访问内部 Docker 服务,又不用浪费宝贵的外部端口。 原理 每个Docker容器都有自己的主机名和 内部 IP,即使不设置外部端口映射,在内部分配的 IP 上也会有对应的端口监听。举……
React 中使用 highlight.js 代码高亮的两种方法
最近在用 React + Material-UI 写一款基于 WP-Rest API 的主题,碰到了代码高亮的问题,这里记录下两种解决方法。 问题 请求 API 返回的数据包含代码块,前端应该调用代码高亮插件“渲染”一下。 在普通的 html 中,页面加载完成时调用 highlight.js 的高亮方法即可,……
TCP的无边界性与分片和重组(所谓的“分包粘包”)
在发送或接受 TCP 字节流时存在的分片与重组是个老生常谈的话题了,有些人习惯叫它“分包粘包”。实际上 TCP 是流模式协议,面向字节流的,没有包这么一说,所谓的“分包粘包”是应用层解析不好的事情。 TCP 是啥&在做啥 流协议 大学计算机网络都学过,传输控制协议(TCP)是一种面向连接的、可靠的流模……
Steam游戏库展示插件WordPress版发布
这是一个在 WordPress 中展示 Steam 游戏库的插件,通过它可以在页面中展示游戏库内的游戏收藏及游戏时间等信息。 效果图 插件特点 本插件页面部分基于 Fog-Forest/Steam-page 模板开发,梓喵出没修改了其内容,并将其集成于插件中。 原特点 个人信息卡片实时更新。 通过 API 获……
以插件形式在WordPress中引入页面模板(自定义页面)
在 WordPress 中可以使用不同的页面模板创建页面,一般情况下,页面模板由主题引入,以page-xxx.php的形式存于主题文件夹内。如果想将其他位置的文件注册成页面模板,该如何做呢? 需求 最近写一个插件,目的是将已有的页面模板注册至 WordPress 页面模板列表中。传统方式引入页面模板需要将文件……
Electron+React+WebRTC屏幕共享(2):获取视频流
书接上回,上次已经建立了可以使用的 Electron + React + WebRTC 开发环境,这次重点解决获取视频流的问题。 Mobx 管理状态 我使用 mobx 抽离 React 组件的内部状态数据,这样有两个好处,1 是方便状态共享,2 是可以把逻辑写在组件外面。 import { observabl……
Electron+React+WebRTC屏幕共享(1):开发环境
很早之前就计划做一个基于 WebRTC 的屏幕共享程序,顺便假设一个 TURN 服务器,试试 WebRTC 流量中转。 简介 很久之前的计划,在此之前,我也开发过类似的 WebRTC 音视频共享,但只是一个很简单的一对一项目,没用上公网 TURN 服务器,也没时间细细研究,因此心里有点遗憾。 这次选定了Ele……
React在SetState后不刷新子组件的解决方法
React 是一套组件化的前端 JavaScript UI 框架,每个组件可以声明并维护 state 属性,框架根据 state 的变化刷新组件。本文中,将父组件的 state 传递给子组件后,state 发生变化,子组件却没有更新。 问题 将本组件的 state 以 props 形式传递给子组件后,子组件用……