ragulka
ragulka

Reputation: 4342

Why can't I require a constructor and immediately use it with browserify?

The two following lines of code should do exactly the same thing. The first one is a bit more verbose, but this should be the only difference. Still, the 2nd example results in an error. Why?

The following works:

var Model = require('./Model');
new Model();

However, the following results in Uncaught Error: Cannot find module './Model'

new require('./Model')();

Upvotes: 3

Views: 849

Answers (1)

cookie monster
cookie monster

Reputation: 10972

It has to do with the operator precedence. If you do this, it will work:

new (require("./Model"))();

What was happening is:

(new require("./Model"))()

Upvotes: 4

Related Questions