Code Monkey home page Code Monkey logo

Comments (7)

ericf avatar ericf commented on May 4, 2024

When compiling the source for the browser with no module system we have to rely on Globals because we don't want to try and embed React with ReactIntl. Are you using a module system in the browser? If so which one?

from formatjs.

pselden avatar pselden commented on May 4, 2024

Yeah, using browserify. I think the same issue would happen with NodeJS though (both using CommonJS)?

I've seen it recommended that react should be specified as a peerDependency in your package.json to avoid having to bundle it with your source. Might that be possible here?

from formatjs.

caridy avatar caridy commented on May 4, 2024

@pselden here are the details on how to use this with browserify/webpack: https://github.com/yahoo/react-intl/releases/tag/v1.0.2

from formatjs.

pselden avatar pselden commented on May 4, 2024

@caridy I think the discussion about bundling it with browserify is tangential to this issue, since you still have to expose React as a global to get this package to work (and the same issue would happen with . If that's intentional, so be it, but it doesn't really look like it is because there's explicitly a check to delete it after it's added to global.React in index.js

from formatjs.

ericf avatar ericf commented on May 4, 2024

@pselden I see what's going on. This is not intentional. In the new components we're referencing React as a global inside the components' render() method, like this.

That's an oversight and I can correct it now so that it doesn't force you to have React be global. On this front we are working on some other change to the ES6 Module Transpiler (and friends) to allow an explicit import React from "react" so that it will be transpiled to a global var looking for the browser, and require('react') for CommonJS. @caridy has started this work, but I don't think we're there yet. We are also looking into how do deal with the locale data in a better way that doesn't require globals either…

So I consider this a bug, which I can address for v1.1.0-rc-2. And we'll continue to make it better so that the index.js in this package doesn't have to do the silly dance it currently does.

from formatjs.

ericf avatar ericf commented on May 4, 2024

@pselden released a fix in v1.1.0-rc-2

from formatjs.

pselden avatar pselden commented on May 4, 2024

Wonderful. Thank you.

from formatjs.

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.