函数式编程的几个概念

本篇文章是自己对于JavaScript函数式编程一书的读书笔记。利用underscore框架介绍函数式编程几个概念。 repeatedly是函数式编程的一个典型思维,将值变成函数。 react和redux里面用了大量的返回其他函数的函数。包括高阶组件,applyMiddlewa…

react内联样式使用webpack将px转rem

在开发react项目时,很多时候我们把style写在css、less、scss里,经过像postcss这样的配置处理,但有没有这样一种需求呢,像有些样式我们直接写在xml标签上style里,然后也能进行处理,如px2rem能将px转rem,是否在style上写也能实现。

浅谈微信小程序登陆与Oauth

微信的登陆认证方式跟Oauth的授权码认证模式非常相似,接下来我大致讲解Oauth的三种常用模式以及与微信登陆认证的关联。 密码模式的登陆方式大致如上,实际场景里,当用户在登陆掘金客户端的时候,可以选择github认证登陆,而不是直接账号密码登陆时。如果github服务器授权通…

react代码拆分之react loadable源码浅析

在做个人网站的js拆分打包时,最终的解决方案是看着网上的教程手写了Bundle高阶组件来动态加载需要的组件。对于它的运用也仅仅是把路由拆开,访问不同的顶级路由进行动态加载,并没有对其原理进行深入的理解。直到看到了React 的加载 loading 库——react-loadab…

拾碎 —— Scoped Packages 的使用

在 npm 的包管理系统中,有一种 scoped packages 机制,用于将一些 packages 以 的命名形式集中在一个命名空间下面,实现域级的包管理。 这就是我们看到的诸如 、、等 package 的存在形态。 那么如何创建和管理这种域级包(其实是小生自己译的名儿,不喜勿怪,嘻嘻)呢。S...

拖拽类,一段代码的进化史

最开始学习面向对象编写代码的时候,自己是个菜鸡,2018年了,还是个菜鸡,废话不多说。当年面向对象写法的第一个示例就是实现一个拖拽的类的编写,使用的是构造函数的prototype属性,为实例对象提供方法。最近的工作也是和拖拽类打交道,这段代码也逐渐的进化并应用到多个使用场景,也…

前面有一个Redux,我们去撩(聊)一下它。

管理整个前端项目(单页应用)所有的状态数据,统一把整个应用的状态存到一个地方(store),保存成一个状态树,修改数据需要派发(dispatch)一个动作(action)通知store修改。组件通过订阅(subscribe)修改事件,获取最新数据来修改自身状态。 整个应用的st…