christianalfoni / webpack-bin

A webpack code sandbox
http://www.webpackbin.com
MIT License
710 stars 75 forks source link

Uncaught ReferenceError: dll_bundle is not defined #232

Open flexicious opened 7 years ago

flexicious commented 7 years ago

When I run this bin: https://www.webpackbin.com/bins/-KgH53SAZfrzmAamZSs8

at Object.defineProperty.value (VM187 main.js:73) at webpack_require (VM187 main.js:20) at Object. (VM187 main.js:132) at webpack_require (VM187 main.js:20) at VM187 main.js:66 at

christianalfoni commented 7 years ago

Hi,

That seems strange. There has been some crashes on the DLL service which I am trying to figure out... though it worked for me, only I get this error:

Uncaught Error: Cannot find module "./js/flexgrid/grids/AdvancedFilter"

I would suggest bringing up devtools with clear cache and try again.

Though could not find the repo for the project? Need to see how things are packaged together. Sadly there is not "one way" to do this, making it very hard to handle all kinds of package configurations.

The logic for handling packages is generic though, so I can dive into this one and see where it fails, adjusting the ruleset for extracting and packing up :)

Guria commented 7 years ago

Clearing sandbox related cookies helps for me. But it definetely must be investigated and fixed

flexicious commented 7 years ago

Really not sure why the module cannot be found : Here is the same project : https://github.com/flexicious/react-datagrid-getting-started

If you take it and run it, you will see it run. But the same code does not run in webpackbin. Any ideas?

christianalfoni commented 7 years ago

@flexicious Hm... there is something different going on with this lib ;-) I can not find any reference to: "./js/flexgrid/grids/AdvancedFilter" in the dist file of either packages. Are there any dynamic require statements there?

Also there is something weird with the dependencies on styles lib:

// flexicious-react-datagrid-styles
{
  "peerDependencies": {
    "react": "^0.14.0 || ^15.0.0",
    "react-dom": "^0.14.0 || ^15.0.0",
    // But we install 1.3.5, meaning it might bundle two versions
    "flexicious-react-datagrid": "^1.1.6"
  },
  "dependencies": {
     // Should this be here? It is also a peer dependency
    "flexicious-react-datagrid": "^1.1.6",
    // Should move to peer dependency
    "moment": "^2.17.1",
    // Should move to peer dependency
    "react-day-picker": "^5.0.0"
  }

It can be dangerous to make hard dependencies to general libs like "moment". You are likely to end up with duplicate versions in the bundled code, and "moment" is huge. I would move these "dependencies" to "peerDependencies" :-)

When I forced install 1.1.6 I got this error: "../js/flexgrid/valueobjects/CellInfo". There really seems to be some version problems there. But bigger question is why it even makes these requires?

I can not find the source code to any of these libs, so it is difficult to understand why this happens.