文蔺 发布于 2017-01-16

Angular 2 中的 HTTP 请求超时处理

以前做 React Native 时,需要对请求进行超时处理。然而,React Native 提供的 fetch 方法,根本没有提供超时的选择。于是只能自己玩些如下的黑科技了,代码一看就很乱,还难以维护:const TIME_OUT = 3000;let reqErrror = false;let reqDone = false;let timeout = setTimeout(() =>...

阅读全文 »

文蔺 发布于 2017-01-16

关于时序攻击

前些日子,奇舞周刊公众号推送了一篇文章,《Node.js 面试问题及答案(2017 版)》。其中有一个问题很有意思,请看下面这段代码,有什么问题吗?function checkApiKey (apiKeyFromDb, apiKeyReceived) { if (apiKeyFromDb === apiKeyReceived) { return true } return fals...

阅读全文 »

文蔺 发布于 2017-01-12

[译] Bluebird 高性能揭秘

Bluebird 是一个广泛使用的 Promise 库,最早在 2013 年得到人们的关注。相比其他同等水平的 Promise 库,Bluebird 快了一百来倍。Bluebird 自始至终遵循着 JavaScript 优化的一些基本原则,所以才有这么好的性能。本文将会介绍其中最有价值的三个方面。1. 函数中的对象分配最小化对象分配(object allocation),尤其是函数中的对象分配,...

阅读全文 »

文蔺 发布于 2016-12-07

[译] React 中的 AJAX 请求:获取数据的方法与时机

React 新手一开始可能会问到这样一个问题,“在 React 中如何发送 AJAX 请求呢?”本文正要回答该问题。首先:React 本身对获取数据的方式并无任何特殊偏好。实际上,在 React 的图景中,根本就不知道“服务器”这种东西的存在。React 只是使用 props 和 state 两处的数据进行组件渲染。因此,想要使用来自服务端的数据,必须将数据放入组件的 props 或 state...

阅读全文 »

文蔺 发布于 2016-12-02

前端界面 Modal 的控制

问题提出需要说明的是,题目中所说的 Modal,指的是所有由前端开发者自定义的对话框,如通常用到的 Alert、Prompt、Confirm 等等,经常伴随着一个半透明的灰黑色全局 mask。事情源自某天使用某网站的页面,出现一个自定义的 Comfirm,习惯性按下回车确认,等了很久也不见弹出层关闭。于是很绝望。继而发现,真不是这一个网站的问题。看看一般浏览器原生的 alert、prompt、co...

阅读全文 »

文蔺 发布于 2016-12-02

笔记:velocity 2016 第二天

有幸得到 Velocity 2016 大会门票,屁颠屁颠跑去听分享。下面是第二天的笔记。记得比较简略,凑合看吧。PPT 下载通道已经放出来了,感兴趣的可以自己跟踪一下。阿里应用运维体系演变分享者:阿里,毕玄工作范围日常运维操作变更环境维护(OS 升级)容量管理如何分布机器稳定性监控、报警故障处理脚本化单机脚本批量操作脚本主要问题复杂变更逻辑不好实现发布到哪里了?运维自己都不知道工具化编写软件系统工...

阅读全文 »

文蔺 发布于 2016-12-01

笔记:velocity 2016 第一天

有幸得到老大给的 Velocity 大会门票,屁颠屁颠跑去听分享。下面是今天(第一天)的笔记。记得比较简略,凑合看吧。PPT 下载通道已经放出来了,感兴趣的可以自己跟踪一下。UseThePlatform —— Web 组件介绍分析者:来自 Youtube 的 Mikhail Sychev感觉就是对 Polymer 和 Web Components 的科普。期待明天更详细的分享。其实关于 Polym...

阅读全文 »

文蔺 发布于 2016-11-30

[译] CSS 方法论的选择

本文转载自:众成翻译译者:文蔺链接:http://www.zcfy.cc/article/1828原文:http://simurai.com/blog/2016/11/27/css-methodologies多年来,CSS 方法论层出不穷。不幸的是,并不存在适用所有场景的最佳选择。本文介绍了一些适用于不同情况的 CSS 方法论。好,跟我一起开始踩坑之旅吧。我只需要创建一个单页面或简单的站点。内容以...

阅读全文 »

文蔺 发布于 2016-11-20

[译] 手把手教你写一个 Javascript 框架:项目结构

过去几个月中,RisingStack 的 JavaScript 工程师 Bertalan Miklos 编写了新一代客户端框架 NX。Bertalan 将通过编写 JavaScript 框架系列文章与我们分享他在编写框架过程中的收获:本章将展示 NX 的项目结构,并讲述如何解决可扩展性、依赖注入以及私有变量等方面的一些困难。本系列章节如下:项目结构(正是本文)执行调度(Execution timi...

阅读全文 »

文蔺 发布于 2016-11-18

[译] 手把手教你写一个 Javascript 框架:沙箱求值

本文是“编写 JavaScript 框架”系列的第三章。在本章中,我将介绍浏览器中对代码求值的几种不同方式及其存在的问题,也会介绍一种依赖 JavaScript 新特性的方法。本系列主要是如何开发一个开源的客户端框架,框架名为 NX。我将在本系列中分享框架编写过程中如何克服遇到的主要困难。对 NX 感兴趣的朋友可以点击 NX 项目主页查看。本系列章节如下:项目结构(Project structur...

阅读全文 »