站内搜索

本次搜索找到结果 45 条

这两天在处理IE8的bug,真的有点让人恼火。但其实解决之后,也会有一些心得。下面和大家分享一下碰到的两个坑:

坑一

export xx from 'xx'

这种写法在IE8下会直接TypeError('Accessors not supported!');(定位了好久,一把鼻涕一把泪)

react 项目的一个ie8兼容性问题,这篇文章中也有提到。

alt

解决办法,就是改成两句话:先import,再export

坑二

IE8下面上传图片组件webuploader,报栈溢出。

我排查了一个下午,丝毫没有头绪,很是抓狂。一个大牛同事教我使用堆栈。

话说,我也看了堆栈,但不知道去明细里面点一下,也是醉了。。orz!!

alt

看了这个错误,大概清楚了为什么栈会溢出了。原因是options里面有一个key,它的value是一个jquery对象,然后去for in,就会有很多。。。

alt

结语

上述两个坑都是一阿里P8在走之前挖的,因为之前的版本是OK的,知道要兼容IE8的,好歹测试一下兼容性吧。。

不过讲真话,是个开发就可能很不愿意打开IE8去看一下有没有问题。所以很多情况下都是前人挖坑,后人来擦屁股。

背景:同事之前用的是nginx配置的后端,然后前端略微复杂一些,有backbone的,也有react的。react的用了webpack-dev-server。他希望能快速地打通这一条线,所以我给他的建议还是用nginx来转发服务。

就是nginx起到两个作用:

  • 转发页面请求到node(webpack-dev-server)
  • 转发API请求到java
server {
    listen       80;
    server_name  localhost;

    location / {
        root   html;
        index  index.html index.htm;
    }

    location /manage {
        proxy_pass   http://127.0.0.1:9008;
        proxy_redirect              off;
        proxy_set_header            Host $host;
        proxy_set_header            X-Real-IP $remote_addr;
        proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;
    } 
}

比如9008是我们开的node服务。那么这样的URL:http://localhost/manage/index.html,会转发变成http://localhost:9008/manage/index.html

问题来了,webpack-dever-server一般不会有manage这一层的,一般都是http://localhost:9008/index.html。所以要怎么干掉呢?

问了一下相关大神,只要这样配即可:

proxy_pass   http://127.0.0.1:9008/;

在URL后面加个/,它就会取最后的路径,不会带上manage了。

之前有提过在项目中使用了arttemplate,然后在改前人的代码时碰到了一些坑。简单在这里说一下。

最近慕课网有了一个新课:React 服务器渲染原理解析与实践,学习了一下,觉得非常地棒。在此记录一下学习过程中的笔记。

来这边这个项目组快2个月了。一开始了解到项目不是react,而是jquery,甚至要兼容IE8,我内心是比较抗拒的。但慢慢发现其实项目架构层面还是做的比较牛的,所以想写一些文章记录一下。

上个月只写了三篇博客,得反思一下。

N久之前,写了一篇redux笔记。然后,现在又有了一些心得,在此记录一下,算是对整个redux的回顾。

最近想好好整理一下react及相关的技术栈,于是就有了这篇文章。

说到ast,我相信大部分的人都不会陌生。它是Abstract Syntax Tree(抽象语法树)的简写,像webpackLint等很多的工具和库的核心都是通过它实现对代码的检查、分析等操作的。

在计算机科学中,抽象语法树(abstract syntax tree或者缩写为AST),或者语法树(syntax tree),是源代码的抽象语法结构的树状表现形式,这里特指编程语言的源代码。

Javascript的语法是为了给开发者更好的编程而设计的,但是不适合程序的理解。所以需要转化为AST来更适合程序分析,浏览器编译器一般会把源码转化为AST来进行进一步的分析等其他操作。

不同的parser解析js代码后得到的AST

alt

一眨眼的事,webpack已经更新到4.6了。

alt

个人感觉也差不多可以入坑了。不过怕就怕再过个半年,来个5.x,但愿5.x和4.x区别不大吧。