-
Notifications
You must be signed in to change notification settings - Fork 10
Uncaught TypeError: Cannot read property 'module' of undefined #16
Comments
This is a good one. The plugin arranges for a "require('angular')" every time "angular" is used as a free variable in a module - this is usually the case with angular modules. But the libraries from the angular team don't use "angular" as a free variable, but "window.angular". So I tried setting "window.angular = require('angular')" whenever "window" is used - but that puts a nice little infinite recursion in the angular.js library itself. The usual way to get around all this "window.something" with webpack is to go to the npm source instead (works great with react.js for example) - but angular on npm isn't commonjs so that's no use. So it seems that the only realistic options are to:
Option 1 is a pain for the user. Option 2 seems to be stretching things a little and will likely still leave only option 1 for other 3rd party libraries built the same way. Of course, there's always option 3 - throw in the towel. Gotta love angular, but I've never seen another framework hate on other ways of doing things (or other libraries) so bad. |
Just look my #17 pull request - the fix is pretty simple) |
I'll be damned - It shouldn't work but it does! I'll need to update the scenario tests and move the "expression window.angular" bit up to the top, but thanks! |
I'm novice at webpack so I'm not sure too. It is just simplified webpack.ProvidePlugin code and it works. Sorry for tests. |
Should be fixed in v0.0.3 (bea1442) |
ngRoute
webpack
and include it to index.htmlnpm start
This is because angular is not defined when angular-route trying to initialize.
The text was updated successfully, but these errors were encountered: