Coder Social home page Coder Social logo

Is es5-sham required for IE8? about react HOT 8 CLOSED

sophiebits avatar sophiebits commented on December 14, 2024
Is es5-sham required for IE8?

from react.

Comments (8)

zpao avatar zpao commented on December 14, 2024

Turns out that Object.create in NormalizedEventListener is actually causing some bugs, so we just changed that internally. We're still working out the kinks to our code sync process but that should be making it's way to master soon.

In the meantime, if having es5shim+sham on the site would help, we can make that happen.

from react.

sophiebits avatar sophiebits commented on December 14, 2024

I can't tell from your answer whether that means that es5-sham should be used and its presence can be relied upon, or if it should go away completely once the code sync happens.

Having the shims on the site might help. How have you been testing in IE8? (Also in general – I've been repeatedly running grunt build then using the examples to test but maybe there's some good way of loading React that doesn't require the explicit build step?)

from react.

zpao avatar zpao commented on December 14, 2024

es5-sham might be able to go away (I don't actually know all the polyfills we need and which live in shim vs sham). I know for sure we need something to completely support IE8. Even if we get rid of this Object.create we have some Array.isArray in there. We should document this better.

Our IE8 testing has been facebook.com :) In general though, if you're making internal changes then you'll need to rebuild to test. grunt build builds debug and minified builds - you can skip the minified step by just run grunt build:basic, might make that cycle a little faster. You could also run the automated tests in browser with grunt test --debug which should start a server which you can hit from any browser. This doesn't help the shim issue though, so probably won't be much use in IE8.

Having a no-build way to test would be smart. I bet we could maybe do it using requirejs or maybe a node server that just builds react.js on demand... but for now building is the only option.

from react.

benjamn avatar benjamn commented on December 14, 2024

FWIW grunt test builds just enough stuff to run the Jasmine specs, so it takes a lot less time than grunt build.

from react.

sophiebits avatar sophiebits commented on December 14, 2024

I made a quick attempt to use React with the only the necessary parts of es5-shim and it appears that Function.prototype.bind, Array.isArray, and Array.prototype.indexOf are the only needed functions. I wonder if it's worth including just those ~50 lines of code in React directly and claiming native IE8 support?

edit: Also Date.now(), but that can be replaced with +new Date without hurting anyone.

from react.

steida avatar steida commented on December 14, 2024

I suppose it's because Array.prototype methods like map or Function.prototype.bind are useful in render method. And IE8 is dying.

from react.

petehunt avatar petehunt commented on December 14, 2024

This can be closed now, right @zpao @spicyj ?

from react.

zpao avatar zpao commented on December 14, 2024

Yea, we talk about all the polyfills needed in the "Browser Suppport and Polyfills" (oh man clownshoes) section of http://facebook.github.io/react/docs/working-with-the-browser.html

from react.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.