Two Ways to Script and Modularize GraphQL Schema

GraphQL Schema 的两种写法及模块化

上个礼拜学习了一下 GraphQL。我觉得入门的一个难点就是写 Schema,跟着 YouTube 教学视频和文档,学习了两种写法,一种是用 GraphQL 的 Schema 语法写,另一种是用 GraphQLSchema 构造器写。

Using GraphQL Schema Language

内置的 Schema 语法是写在模板字符串里的,由 buildSchema() 创建。

Click to read more ...

How to Use React-Redux Basically

初步搞懂了 react-redux 的用法

前天周五看了半天 YouTube 视频,感觉终于搞懂了 react-redux 最简单的用法,也就是说,入门了、会用了。这让我非常有成就感,年纪大了,每学会一样新东西,都是一次青春的夺回。

共享状态

React 组件有个很重要的元素就是状态(state),状态决定 UI 的呈现结果。那么,怎样让组件 A 的状态影响组件 B 的状态呢,就需要一个全局状态,也就是状态需要被共享。Redux 的主要作用就是解决这个共享问题。

Click to read more ...

Dabbling in Developing Chrome Extension

初试 Chrome Extension 开发

这两天试着接触了一下 Chrome Extension 的开发。

起因是一个朋友问我有没有办法在操作网站表单时减少重复点击工作,一开始我的想法是直接贴 JS 代码到 console 里,后来想了下,不如做成插件,一键实现功能,更方便省事。

然而前天的我并不知道怎么开发插件。于是网上找了 官方教程 开始学习。今天终于搞定了最基本的操作 DOM 的功能。

插件是用 JS 写的,写方法并不难,难的是了解它运行的模式和结构。

Click to read more ...

Deploying Shadowsocks with Docker in Debian 9

在 Debian 9 上用 Docker 搭建 Shadowsocks 服务器

从 Vultr 到 BandwagonHost,从 CentOS 到 Debian

昨天买了传说中的搬瓦工服务器,普通的 CN2 线路。如果实测下来速度真的比 Vultr 的服务器快,以后就准备换这个了。换服务器的想法来自这篇「科学上网」

之前服务器上装的系统是 CentOS 7 ——鸟哥学徒的不二选择,这次想试试 Debian 了。CentOS 虽然稳定,但是软件版本比较老,有时装某些软件会比较麻烦,科学上网要跟得上时代发展,还是不要太过保守。

第一步,管理后台安装了 Debian 9 x86_64 系统。系统装完后搬瓦工默认的 ssh 端口是随机的,这点就比 Vultr 好,想起当初不懂,装完系统美滋滋,结果 22 端口被暴力登录疯狂攻击……

Click to read more ...

Use CSS background for Scale Mark

用 CSS background 实现刻度线的呈现

  有的时候,我们需要在网页中的进度条或某种度量计上呈现一条条的刻度线。例如这种:

scale mark demo

简单的实现方式,大致有两种:一是用图片做背景,横向平铺线条图片;二是给每一块刻度区域平铺一个元素,然后用边线实现。身为一个“环保主义者”,这两种方式都不能让我满意。在看了 Lea Verou 的 CSS SECRETS 后,我受到了启发——可以用渐变背景的方式去实现。

Click to read more ...