Are you referring to ES6 specifically or the broader ECMAScript standard? Since ES6 maintains backwards compatibility, it is possible to utilize any event library in ES5 (JavaScript) that is available.
I recommend exploring Backbone, particularly for tasks involving model/view logic, as it excels in this area. Backbone boasts a minimalist design, its own event emitter/listener system (refer to the Events section), which closely resembles the one used internally by the DOM, and facilitates clean separation between view and model logic.
Recently, I developed a basic application as a proof of concept using Backbone with ES6, and found it to be fully compatible as anticipated. Extending base classes through ES6's extend
function mirrors underscore's extend
behavior when utilizing extend
as recommended in Backbone's documentation.
In my case, I utilized Babeljs for transpilation purposes.