core icon indicating copy to clipboard operation
core copied to clipboard

Seems like MaterialTable is not compatible with ES Modules

Open jackbravo opened this issue 1 year ago • 1 comments

Guidelines

  • Please include a demo of the issue/behavior/question you have

https://github.com/jackbravo/material-table-esm-demo

npm install
npm run dev

and navigate to /material-table

  • Please try to be as detailed as possible

If you change to cjs it works ok, but when you switch to esm it gives this error on the browser:

Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6109:9)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)

And this one on the remix server console:

Warning: React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: object.

Check your code at material-table.tsx:35.
    at BasicTable
    at RenderedRoute (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router/dist/umd/react-router.development.js:520:7)
    at Outlet (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router/dist/umd/react-router.development.js:1123:28)
    at body
    at html
    at App
    at RenderedRoute (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router/dist/umd/react-router.development.js:520:7)
    at RenderErrorBoundary (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router/dist/umd/react-router.development.js:467:7)
    at DataRoutes (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router-dom/server.js:130:3)
    at Router (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router/dist/umd/react-router.development.js:1144:17)
    at StaticRouterProvider (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-router-dom/server.js:67:3)
    at RemixErrorBoundary (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/@remix-run/react/dist/errorBoundaries.js:40:5)
    at RemixServer (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/@remix-run/react/dist/server.js:47:3)
Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6109:9)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
    at renderNodeDestructive (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6142:14)
    at renderIndeterminateComponent (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:5851:7)
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6012:7)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
    at renderNodeDestructive (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6142:14)
    at renderContextProvider (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:5986:3)
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6083:11)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6109:9)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
    at renderNodeDestructive (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6142:14)
    at renderIndeterminateComponent (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:5851:7)
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6012:7)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
    at renderNodeDestructive (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6142:14)
    at renderContextProvider (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:5986:3)
    at renderElement (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6083:11)
    at renderNodeDestructiveImpl (/Users/joaquin.bravo/Documents/wizeline/material-table-esm-demo/node_modules/react-dom/cjs/react-dom-server.node.development.js:6170:11)
GET /material-table 500 - - 19.646 ms

jackbravo avatar Feb 13 '24 14:02 jackbravo

Do you have a solution for this problem?

Domino987 avatar Mar 27 '24 13:03 Domino987

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. You can reopen it if it required.

stale[bot] avatar Jun 26 '24 01:06 stale[bot]

Is there a solution or workaround for this without client rendering?

gsharp021 avatar Jul 26 '24 13:07 gsharp021