caridy / es6-micro-loader Goto Github PK
View Code? Open in Web Editor NEWES6 System Loader Polyfill
License: MIT License
ES6 System Loader Polyfill
License: MIT License
Is this something that is planned?
See https://github.com/systemjs/systemjs/blob/master/lib/extension-register.js#L63
When creating bundles for SystemJS, to allow AMD, CommonJS and ES6 to all bundle together we use dynamic System.register with 4 arguments to allow this.
If we could support this form as well in the micro loader, then we would be able to create bundles of any module format and have them work against a micro loader. That would provide a really nice dev -> production workflow with SystemJS -> micro loader.
I'm keen to work along these lines.
I was wondering if it would be possible to have https://github.com/caridy/es6-micro-loader/tree/master/dist as part of the package pushed to npm? This would help people who use npm for client-side packages as well.
@caridy I can't send a proper patch atm (will do later today while back at home) but there is a bug in the System.import handling of promises for dynamically loaded files - please notice how resolve
is never called when a file is loaded.
I believe that the proper solution is to do:
import: function(name) {
var normalizedName = normalizeName(name, []);
var mod = get(normalizedName);
return mod ? Promise.resolve(mod) : load(name).then(function () {
return get(normalizedName);
});
},
Does it sound reasonable? If so I will try to submit a PR, including tests (I just need to get familiar with the tools / testing strategy this project is using).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.