Watches (current) directory */.js files and re-generates main.js
Watches (current) directory */.js files and re-generates main.js, responsible for loading whole client-side application
- it does so by injecting
<script src="">tags during development
- files are loaded synchronously
- debugging is still possible, original files are left untouched
- can be also minified to one dist file during build process (using uglifyjs --no-mangle)
###Ignored files Directories starting with dot are ignored, this makes it perfect place for your bower dependencies. Use .bowerrc to override bower components directory.
###Order of loading Files as loaded alphabetically, with each directory treated as module, dependent on its children. This can be better understood with following example:
/test-app/ /!deps/ jquery.js jquery.plugin.js /common/ BaseModel.js /eshop/ /products/ Product.js Cart.js /users/ User.js app.js
Where app.js will be loaded last, Product will be loaded before Cart but after ActiveRecord, because it is in folder above. Jquery will be loaded first in this example.
###Options It is possible to override both filename, directory and/or glob-pattern, however it is discouraged to do so except for timestamped dist files.
npm install -g main-js
Usage: main-js [options] Watches (current) directory **/*.js files and re-generates main.js Options: -h, --help output usage information -V, --version output the version number --target [file] target file name (main.js) --directory [dir] dir to scan for js files (.) --pattern [glob-pattern] custom js-file pattern (**/*.js) --build minify sources to target file, do not watch Development - watch for file changes: cd my-web-app main-js Build - generate "big" dist file: cd my-web-app main-js --build NOTE: Do not commit generated files to SCM, use --build flag during build instead