Skip to content

Latest commit

 

History

History
53 lines (40 loc) · 1.39 KB

README.md

File metadata and controls

53 lines (40 loc) · 1.39 KB

warm-require

Hot reload for server

You can read about the implementation here

Features

  • Reload files which changed
  • update file when any sub-dependency is modified

##installation

npm i --save-dev warm-require

##Usage

//index.js
var warmRequire = require('./warm-require-config');
var hotModule = warmRequire(__dirname + '/module');

function whichGetsCalledOnEveryRequest() {
	// Reload it.
	hotModule = warmRequire(__dirname + '/module');

	// Use it.
	render(hotModule);
}
// warm-require-config.js
if (process.env.NODE_ENV === 'production') {
	module.exports = require;
} else {
	var warmRequire = require('warm-require').watch({
		paths: __dirname + '/**/*.jsx' // used anymatch. https://github.com/es128/anymatch.
	});
	module.exports = warmRequire;
}

Known issues

  • You cannot use with ES6's import statement. It is immutable to make it statically analyzable, so that it would work in browsers as well. (Arrgh) So you will have to use var or let.

Todo

License @ MIT