摘要: css中的相对单位与绝对相位 传统pc端网页设计中,设计师给出的视觉元素大小的衡量单位通常是以css中的px为单位的。我们也从来不去关心一px到底有多长,只要按照设计师给出的px大小编写css代码即可。所以很多前端开发认为px是绝对单位,甚至很多css书籍中也简单的告诉我们px是绝对em、ex、单位阅读全文
posted @ 2017-04-11 07:35 木的树 阅读(536) 评论(6) 编辑
摘要: 换了新工作,也确定了我未来数据可视化的发展方向。新年第一篇博客,又逢春运,这篇技术文章就来交给大家如何做一个酷炫的迁徙图(支持移动哦)。(求star 代码点这里) 迁徙图的制作思路分为静态的元素和变换的动画。其中动画是围绕着静态的元素变换,所以我们首要的任务就是如何绘制静态的元素。 仔细看一下,静态阅读全文
posted @ 2017-01-10 09:45 木的树 阅读(4260) 评论(25) 编辑
摘要: 缓存优点 通常所说的Web缓存指的是可以自动保存常见http请求副本的http设备。对于前端开发者来说,浏览器充当了重要角色。除此外常见的还有各种各样的代理服务器也可以做缓存。当Web请求到达缓存时,缓存从 中提取这个副本内容而不需要经过服务器。这带来了以下优点: 缓存减少了冗余的数据传输,节省流量阅读全文
posted @ 2016-05-24 07:53 木的树 阅读(6421) 评论(15) 编辑
摘要: 为什么要提升web性能? Web性能黄金准则:只有10%~20%的最终用户响应时间花在了下载html文档上,其余的80%~90%时间花在了下载页面组件上。 web性能对于用户体验有及其重要的影响,根据著名的`2-5-8`原则: 当用户在2秒以内得到响应,会感觉系统的响应非常快 当用户在2-5秒之内得阅读全文
posted @ 2015-06-21 02:22 木的树 阅读(12782) 评论(32) 编辑
摘要: Promise的诞生与Javascript中异步编程息息相关,js中异步编程主要指的是setTimout/setInterval、DOM事件机制、ajax,通过传入回调函数实现控制反转。异步编程为js带来强大灵活性的同时,也带来了嵌套回调的问题。详细来说主要有两点,第一嵌套太深代码可读性太差,第二并阅读全文
posted @ 2015-03-16 00:46 木的树 阅读(15295) 评论(12) 编辑
摘要: 什么是跨域JSONPproxy代理corsxdr 由于浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。具体可以查看下表(来源) JSONP 这种方式主要是通过动态插入一个script标签。浏览器对script的资源引用没有同源限制,同时资源加载...阅读全文
posted @ 2015-02-01 16:08 木的树 阅读(68738) 评论(47) 编辑
摘要: 最初这篇文章打算回答寒冬大神的第一问,谈谈CSS布局。本来呢我以为布局主要涉及float跟display相关属性,以及他们的包含框、静态位置等等。后来看了大神的一片面试文章,嗯?这里怎么还有个BFC,这是神马东东。待我搜索一下,萨萨萨,不看不知道,越看越糊涂,这到底是个神马东东。。。经过一个周时间的阅读全文
posted @ 2014-09-29 21:23 木的树 阅读(18262) 评论(27) 编辑
摘要: css中的相对单位与绝对相位 传统pc端网页设计中,设计师给出的视觉元素大小的衡量单位通常是以css中的px为单位的。我们也从来不去关心一px到底有多长,只要按照设计师给出的px大小编写css代码即可。所以很多前端开发认为px是绝对单位,甚至很多css书籍中也简单的告诉我们px是绝对em、ex、单位阅读全文
posted @ 2017-04-11 07:35 木的树 阅读(536) 评论(6) 编辑
摘要: 对于node开发同学经常要处理异步请求,然后根据请求的结果或请求成功后的状态码做不同的策略处理,众多策略中最常用的一种就是重试策略。针对重试策略我们往往还需要设定一定的规则,如重试次数、重试时间间隔、总体超时时间、重试判定等。针对以上问题,这里推荐一个工具包:bluebird retry。 blue阅读全文
posted @ 2017-03-21 15:50 木的树 阅读(70) 评论(0) 编辑
摘要: 换了新工作,也确定了我未来数据可视化的发展方向。新年第一篇博客,又逢春运,这篇技术文章就来交给大家如何做一个酷炫的迁徙图(支持移动哦)。(求star 代码点这里) 迁徙图的制作思路分为静态的元素和变换的动画。其中动画是围绕着静态的元素变换,所以我们首要的任务就是如何绘制静态的元素。 仔细看一下,静态阅读全文
posted @ 2017-01-10 09:45 木的树 阅读(4260) 评论(25) 编辑
摘要: Angular2以组件化的视角来看待web应用,使用Angular2开发的web应用,就是一棵组件树。组件大致分为两类:一类是如list、table这种通放之四海而皆准的通用组件,一类是专为业务开发的业务组件。实际开发中大部分时间我们都需要处理业务组件。对于SPA应用来说,一个通用的问题就是如何控制阅读全文
posted @ 2016-09-27 08:35 木的树 阅读(2174) 评论(7) 编辑
摘要: 工作中碰到的问题,特此记录一下。 Angular2中允许我们以`path\:id\childPath`的形式来定义路由,比如: 如果是在AppComponent中,很容易使用`ActivatedRoute`拿到当前路由获取参数: 但如果是在`children`中指定的component要拿到路由参数阅读全文
posted @ 2016-09-18 22:59 木的树 阅读(2780) 评论(0) 编辑
摘要: 在Angular2中一个Module指的是使用@NgModule修饰的class。@NgModule利用一个元数据对象来告诉Angular如何去编译和运行代码。一个模块内部可以包含组件、指令、管道,并且可以将它们的访问权限声明为公有,以使外部模块的组件可以访问和使用到它们。 模块是用来组织应用的,通阅读全文
posted @ 2016-09-17 10:40 木的树 阅读(4975) 评论(6) 编辑
摘要: Reactive Extensions for Javascript 诞生于几年前,随着angular2正式版的发布,它将会被更多开发者所认知。RxJs提供的核心是Observable对象,它是一个使用可观察数据序列实现组合异步和事件编程。 跟这个很类似的异步编程模型是Promise,Promise阅读全文
posted @ 2016-09-16 00:04 木的树 阅读(2212) 评论(7) 编辑
摘要: Angular的模块的目的是用来组织app的逻辑结构。 在ng中使用@NgModule修饰的class就被认为是一个ng module。NgModule可以管理模块内部的Components、Directives、Pipes,引入Service,并控制外部组件对内部成员的访问权限。 NgModule阅读全文
posted @ 2016-09-14 11:41 木的树 阅读(643) 评论(0) 编辑
摘要: 现在是西太平洋时间凌晨,这个问题我鼓捣了一天,都没时间学英语了,英语太差,相信第二天我也看不懂了,直接看结果就行。 核心原理就是require在AngularJs2编译过程中是关键字,而在浏览器里面运行时候AngularJs2不会去关心require方法。所以只要在原始的ts代码中不出现requir阅读全文
posted @ 2016-07-20 15:14 木的树 阅读(829) 评论(2) 编辑
摘要: npm shrinkwrap 我们使用node开发时,经常需要依赖一些模块来完成功能需求,而我们所依赖的模块也必然会依赖其他模块,就这样一级一级的依赖,而且这些依赖模块并不为我们所控制。一个产品或项目的开发周期,少则几个周,多则几个月几年。开发人员往往在一开始时下载了依赖包发现能够正常工作后,便一直阅读全文
posted @ 2016-06-21 07:28 木的树 阅读(633) 评论(4) 编辑