When should I use require() and when to use define()?

skinnybrit51 picture skinnybrit51 · Feb 29, 2012 · Viewed 92.8k times · Source

I have being playing around with requirejs for the last few days. I am trying to understand the differences between define and require.

Define seems to allow for module separation and allow for dependency ordering to be adhere. But it downloads all the files it needs to begin with. Whilst require only loads what you need when you need it.

Can these two be used together and for what purposes should each of them be used?

Answer

wischan picture wischan · Mar 1, 2012

With define you register a module in require.js that you can then depend on in other module definitions or require statements. With require you "just" load/use a module or javascript file that can be loaded by require.js. For examples have a look at the documentation

My rule of thumb:

  • Define: If you want to declare a module other parts of your application will depend on.

  • Require: If you just want to load and use stuff.