去年年底非常热门的前端议题就是facebook的开源库react.js,还有尚未开源的react native也带来了一丝神秘感,下面就简单说下用react写组件的过程和心得。
如果你不想听我啰嗦,直接看示例看源码就点击下面
(更多…)
博客
-
用React编写组件
-
IOS Javascript Date的坑
Date对象是JavaScript提供的日期和时间的操作接口,它有多种用法。手册上或者网上也有很多文章介绍,这里就不再次复述了。
上次遇到一个坑,这里总结下,也不是什么大问题,若是如果有经验,就不会花费很长时间去定位问题了。说下背景,一个早已经开发好的页面,在android的机器上运行的很正常,没出一点问题。某一天,产品狗跑来问我,为啥IOS上这个页面是空白的,为啥呢?到底是为啥呢?在需求忙不停的时候我还得抽空看这个外网bug,这哪算bug,要上IOS平台也没经过测试啊,什么时候被放到IOS的APP里面去了,简直不想吐槽。
-
扒一扒前端构建工具FIS的内幕
每次发版本都有个蛋疼的问题,同一个页面改版,不仅要保证发出去的页面不报错,而且得兼容现网的版本。最为传统的方法就是在资源文件后面加上一个随机参数
xxx.js?t=1234
,但即使是这样也无法保证拉回的xxx.js是新文件。最为安全的方法是将文件名改为新的。面对多人开发、模块共用等问题,你会发现手动改文件名是一个非常搓的想法,程序员喜欢偷懒,这是天性。理想的状态可能是这样的:不需要去做多余的体力劳动,只需一个命令即可完成,从开发到提测,到最后的上线。
基于nodejs的构建工具还是比较多,诸如grunt,gulp,yeoman,fis等等。
经过一些日子的捣腾,现在FIS已经在团队跑起来了,完全避免了发版本的问题。但FIS带来的好处远不止这些,下一篇文章会讲到我是如何将FIS运用到项目中的,以及对性能优化带来的好处。各位看官,这次且随我看看FIS到底是个什么玩意儿。
-
web性能优化–缓存
雅虎的16条优化准则,作为前端开发工程师,都是耳熟能详,信手拈来。但很多时候也能难完全的做得到,一些准则跟工程原则是冲突的,难以落实起来。
JS文件放尾部,CSS文件放头部等,这些基本的优化点还是可以做到,但是有时候遇到网速慢的情况,会出现一段时间的白屏,从用户体验的角度来说,还是有提升的空间。 根据移动站点的特性,已经用户对页面的期待看来,用户在刚打开页面的时候可以接受旧的东西。 (更多…)
-
wireshark语法
wireshark过滤支持比较运算符、逻辑运算符,内容过滤时还能使用位运算。如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,说明表达式有误。
-
[译文]更快的javascript memoization
memoization虽然并不是什么新鲜事,但确实是一个非常有用的技术手段来缓存函数的计算结果,例如冗长的查找或昂贵的递归计算。
基本的原理是,如果你可以判断在一次运算之前,程序已经完成依赖一组特定的输入值的计算,那么计算结果可以直接返回,而不需重复计算一次。
memoization可以帮助优化的一些问题包括:递归、高速缓存的canvas动画和更一般意义上的重复计算。
-
减少重复劳动:node之初体验
自node横空出世来,业界充满了各种流言,众说纷纭。在性能、高并发方面如数家珍的对node称赞不已。但公司的业务在node上的尝试却很少,一来是新的东西,需要探索,稳定性有待考验;二来,既然已经有成熟的框架,而且能够轻车路熟的用起来,为何就要选择node。而node对大多数后台的开发来说语法上就是一道屏障,虽然屏障浅显,但习惯C++不愿去尝试新的东西,况且node没让他们觉得多牛逼。 (更多…)