create-react-library icon indicating copy to clipboard operation
create-react-library copied to clipboard

Support for the experimental syntax 'jsx' isn't currently enabled

Open Ploppz opened this issue 2 years ago • 2 comments

I made a library with create-react-library called components.

What's weird is that it builds just fine (npm build) but when I try to use it in an application I get the error

ERROR in ../components/src/index.js
Module build failed (from ./node_modules/babel-loader/lib/index.js):
SyntaxError: /home/ploppz/components/src/index.js: Support for the experimental syntax 'jsx' isn't currently enabled (18:10):

  16 |
  17 | function MyAppBar({ children, name }) {
> 18 |   return <AppBar title={<span>Title</span>} position={"sticky"}>
     |          ^
  19 |     <Toolbar>
  20 |       <a href="/">
  21 |         <img

In package.json: "components": "file:../components",

This application is a CRA application that worked fine before I tried to include this library - it definitely has JSX enabled. When I google my problem, the solutions I find have to change the babel config, but afaik, I cannot do that without ejecting the CRA...

Please tell me if you need more information.

Ploppz avatar Jan 21 '22 10:01 Ploppz

Did you end up finding a solution? i'm having the exact some problem except with my own component library. I just want to be able to install my own package without having to 'pre-build' it.

meneerrook avatar Apr 06 '22 11:04 meneerrook

@meneerrook My solution was to not use create-react-library. I got help in the React JS room on Matrix by a very helpful individual who shared a draft of a guide that she had written, on how to set up a react library (no fancy tools). Link to first message: https://matrix.to/#/!duqxVZLLoRUIktuuYH:matrix.org/$XJPJLYdzk3tE89I1dJKcm5-NKY2LCNv7HRLafpUIJcM?via=matrix.org&via=t2bot.io&via=chat.tgp.io (subsequent messages will be helpful to fill in some missing information)

It turns out that despite it actually being rather straightforward, there's no good guide to do it except for this one which sadly has not yet been finalized and released. That's at least the only resource that helped for me (I tried to go through several guides, all of them more complex, and always ended up getting some error).

Ploppz avatar Apr 08 '22 08:04 Ploppz