Setup:
- BabelJS (es2015, react, stage-1)
- Webpack
- React / redux
New to CommonJS and ES6. I know the difference between an object instance and a static container of methods but I am not sure how they behave when separated to modules. So I wonder what are the differences between returning an instance (is this pattern valid at all?):
// StateParser.js
class StateParser {
constructor() {
}
method1() {
...
}
}
export default new StateParser()
and exporting const methods:
// StateParser.js
let state = {
}
export const method1 = () => { ... }
- Method A: Would there be a new instance every time I import?
Method B: Is one of the benefits the ability to use object destructuring:
import { method1 } from '../utils/StateParser.js';
and then use method1 as if it existed locally?
Method A: Is one of the benefits the ability to initialize state in the constructor?
So basically I am not sure when to use which for my utility classes and would appreciate your input.