0%

node express 20行代码实现反向代理服务器

遇到的问题

开发的时候经常会遇到一个问题,就是后台API和前端页面分开开发,但是开发的时候并不想在本地搭建后端环境,因为特别麻烦!特别麻烦!特别麻烦!比如说要配置运行环境、装数据库还有服务器。乱七八糟,有时候光是弄环境就要弄一天。可是如果不配置又没办法开发。最主要的是请求后端API的时候会遇到跨域问题。最简单的方法当然是后端帮忙配一个CORS。但是如果后端没办法配合的话,可能就比较麻烦了。这时候可以使用反向代理进行开发。

阅读全文 »

在我司的后台管理组件库pagurainrsuite中要求实现换肤功能,以下是我们对这一功能实践的记录及过程。

前提

为了统一各产品的视觉和操作体验,我们建立了UI规范体系,方便创建项目也方便统一管理。
以扁平化和简洁为主旨的设计风格,使用块面来进行布局,用线条来表达各个控件,使功能庞杂的系统 既直观又条理清晰,让使用者一目了然。

主色及色阶

系统共用的组件颜色和变化形式是统一的,在此基础上,各系统又有自己的主色调。

每套系统都会有一个主色,并在主色的基础上,在同一色调中扩充成一组完整的可复用的色彩体系,丰富系统配色。

如下图所示,每组色彩是按一定的规律在明度和饱和度上选取得出的。

阅读全文 »

今天开发一个功能遇到一个需求,在页面 A 点击查看详情后在页面 B 进行审核,审核后页面 B 关闭,然后刷新页面 A 的数据。思路大概就是:

使用 webSocket 进行通讯

但是这样,工作量是巨大的,而且还需要后端支持。太麻烦了,对于我这种懒人来说,直接就放弃了。

写个定时器,不断检查 Cookies 的变化

然后在stackoverflow看到一个方案,大致思路是:

  1. 在页面A设置一个使用 setInterval 定时器不断刷新,检查 Cookies 的值是否发生变化,如果变化就进行刷新的操作。
  2. 由于 Cookies 是在同域可读的,所以在页面 B 审核的时候改变 Cookies 的值,页面 A 自然是可以拿到的。
    这样做确实可以实现我想要的功能,但是这样的方法相当浪费资源。虽然在这个性能过盛的时代,浪费不浪费也感觉不出来,但是这种实现方案,确实不够优(zhāng)雅(bī)。

    阅读全文 »

涟漪按钮:顾名思义,就是点击按钮的时候,有一个圆圈扩散开来,就像水面的涟漪。效果如下:

看上去非常简单的效果,就是点击的时候一个圆圈从小变大,于此同时透明度从半透明变为透明。
常见的方式是使用javascript

  1. 监听鼠标的点击事件,当点击按钮的时候,追加一个圆形的dom
  2. 改变dom的大小,直至完全覆盖按钮
  3. 移除按钮
阅读全文 »