周二晚上邮件收到一个需求:下周有个活动页面,就一个静态页面。打开设计稿一看,一个秒杀活动页面,与设计对了一下,发现有个动画要做。之后需求方描述了一遍:倒计时结束,按钮可点,跳转到订单页面。后来,开发一对需求,发现秒杀后面的很多逻辑都没考虑:
周二晚上邮件收到一个需求:下周有个活动页面,就一个静态页面。打开设计稿一看,一个秒杀活动页面,与设计对了一下,发现有个动画要做。之后需求方描述了一遍:倒计时结束,按钮可点,跳转到订单页面。后来,开发一对需求,发现秒杀后面的很多逻辑都没考虑:
前几天做的一个移动端页面需要播放一段视频。嵌入页面video标签的方式肯定是不合适的。
因为页面需要的其实只是一个动画效果,对音频没有要求,所以就有机会选择其它的方式解决。最先想到的方案是 canvas-video,前不久 BM2 炫酷的微信广告就是用它实现的。原理很简单:
在前端开发中,我们往往会定义自己的组件,比如常见的日期选择器 datepicker
,在其它页面上需要使用时再实例化一个组件。本文简单地聊下组件封装。首先会说下基于 jquery 的封装,之后会以 angular 为例,简单说下框架与组件的适配。最后说说 web components
标准。
看过张云龙在git上关于前端集成的讨论,总结下工作中的问题。去年初的时候读过,之后也思考总结过我们平时开发项目中遇到的问题。现在再重新梳理一遍,主要是组件化。InfoQ 上的文章 && github 上文章
先谈谈在工作中遇到的问题。平时工作中负责的管理系统较早的开始在两三年之前,采用了某个 SPA 框架,以及搭配的 UI。有几个现基于此技术系统需要不时升级维护。在开发过程中,经常遇到该 UI 引起的很诡异的 bug,并且该 UI 源码较难读懂维护。于是在新的系统中使用了另一套 UI,新的 UI 代码容易理解,也容易在此之上扩展。
当我们使用 AngularJS 构建一个包含许多路由/视图的大型应用的时候,我们希望在最初加载的时,最好不加载所有的 artefacts,像 controller、directive 之类。理想情况下,最初加载时只加载必需的模块。之后用户改变路由,加载尚未加载的所需模块。这样做的好处不仅会加快页面初次加载速度,而且会节约带宽。这篇文章就介绍了在 AngularJS 架构的应用中如何懒加载 artefacts。
这篇文章很好的介绍了Promise http://www.html5rocks.com/zh/tutorials/es6/promises/
跟大多数人一样,在最初接触JS时,没有考虑过模块的概念。当工作中前端做的事情越来越复杂,JS 越来越庞大,就必须好好考虑组织 JS 代码了。了解其它语言的人,可能会惊讶 JS 没有模块。当每个人都在做这件事情的时候,就不得不归咎到语言问题上了,或许在以后的规范中将加入对模块的支持。不过现在的我们还是有必要了解下怎么组织模块和懒加载的思想。