Leooonard / Notes

2 stars 0 forks source link

工作中遇到的问题 #20

Open Leooonard opened 8 years ago

Leooonard commented 8 years ago

未解决问题

  1. 使用checkout将index切回某个具体的commit。(原理基本清楚,找时间写一下)
  2. 使用fiddler会导致我无法在chrome中访问https站点。
  3. http的缓存机制。
Leooonard commented 8 years ago

window.history的stack问题。

以一个简单的例子说明几种情况,来说明stack的变化机制。 A:www.baidu.com B:www.sina.com.cn C:www.google.com

情况1:访问A,然后访问B。 stack情况:A---B。

情况2:访问A,然后访问B,再访问A。 stack情况:A---B---A。

情况3:访问A,然后访问B,再访问A,退回B。 stack情况:A---B---A。(这里要注意,活动的session在B上)

情况4:访问A,然后访问B,再访问A,退回B,刷新。 stack情况:A---B---A。(活动的session在B上)

情况5:访问A,然后访问B,再访问A,退回B,刷新,访问C。 stack情况:A---B---C。

Leooonard commented 8 years ago

当遇到迁移代码的需求时

注意以下几点:

  1. 修改引用路径。 代码迁移后,路径发生了变动,因此引用代码往往需要进行修改。在修改时注意本地调试,测试,生产环境都需要通过验证。可以考虑将容易变动的那部分path配成全局变量,以后再做迁移只需要改这个变量即可完成引用路径的修改。
  2. 注意基础模块。 迁移代码中必不可少的是复制代码,这是最基础最简单的一部,但是被迁移代码中通常会引用一些基础模块,这些模块需要注意一起迁移,或者修改引用路径。如果采用一起迁移的策略,需要注意保持两边基础模块文件内容的同步。
  3. 修改打包配置文件。 现代前端项目中,打包基本必不可少,因此在迁入的项目中,打包配置文件也要做相应的修改,以适应新的项目结构。

迁移工作,通常开发的量并不大。主要工作量在测试端,但是开发需要配合测试,尽量覆盖到所有细节,保证底层的基础模块不会出错。

Leooonard commented 8 years ago

font-size问题

现在页面布局中,rem是很常用的布局方式,通过调整html节点上的font-size值配合rem进行布局,可以在不同的分辨率下得到相同的页面布局。

通常,在使用rem前,都会在html节点上设置font-size值。那么如果不设置呢?font-size值在浏览器中有默认值,大多数浏览器对其的默认值为16px,所以在此情况下,font-size按照16px进行计算。

ps:并非所有浏览器都有16px的默认值,并且用户对于浏览器的不同设置会导致该值在不同浏览器下不同。所以使用默认值需谨慎!

Leooonard commented 8 years ago

埋点的考量维度

埋点的考量维度主要有以下3点:

  1. 基础数据覆盖面。页面的pv,uv,停留时长作为基础数据是必备的,且是推到出其他有用数据的基础,因此对于埋点功能的设计,这点必不可少。对此点的设计良好,可以保证页面上线后任何问题得到迅速的反馈,对于数据也能做到心里有数。
  2. 埋点函数易用性。埋点函数应该易用,对于使用者,只需要传入自己关心的参数,对于用户id等通用数据,应封装在埋点函数内,防止使用者漏传。
  3. 埋点数据分析容易。埋点后分析数据是必不可少的,因此对于所埋数据能够方便快速的分析也十分重要,也是一个重要的考量维度。所以在制定埋点的数据结构后,需要配套相应的解析脚本。