https://github.com/lifeart/ember-cli-fallback-builds
Modern/Legacy browsers support, having different js files
https://github.com/lifeart/ember-cli-fallback-builds
ember-addon ember-cli emberjs modern-browsers
Last synced: 4 months ago
JSON representation
Modern/Legacy browsers support, having different js files
- Host: GitHub
- URL: https://github.com/lifeart/ember-cli-fallback-builds
- Owner: lifeart
- License: mit
- Created: 2019-07-09T18:33:48.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-10T21:53:18.000Z (over 2 years ago)
- Last Synced: 2025-02-02T06:31:37.408Z (4 months ago)
- Topics: ember-addon, ember-cli, emberjs, modern-browsers
- Language: JavaScript
- Size: 2.39 MB
- Stars: 23
- Watchers: 2
- Forks: 1
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
ember-cli-fallback-builds
==============================================================================[](https://greenkeeper.io/)
This addon allow to have 2 builds (bundles) (for modern and legacy browsers) in one time.
(module, nomodule)
[Modern Script Loading](https://jasonformat.com/modern-script-loading/)
[Pre-RFC: Generate and serve ES2015 assets](https://github.com/emberjs/rfcs/issues/383)
Alternatives:
* [ember-cli-babel-polyfills](https://github.com/pzuraq/ember-cli-babel-polyfills) [difference](https://github.com/lifeart/ember-cli-fallback-builds/issues/3)Compatibility
------------------------------------------------------------------------------* Ember.js v2.18 or above
* Ember CLI v2.13 or above
* Node.js v8 or aboveInstallation
------------------------------------------------------------------------------```
ember install ember-cli-fallback-builds
```Usage
------------------------------------------------------------------------------Configure your `config/targets.js`:
```
process.env.BUILD_TARGET = LEGACY | MODERN
```Example:
`config/targets.js`
```js
const browsers = [
'last 1 Chrome versions'
];const isFallback = process.env.BUILD_TARGET === 'LEGACY';
if (isFallback) {
browsers.push('ie 11');
}module.exports = {
browsers
};
```run:
```
ember build:fallback --prod
```check `index.html`
`dist/index.html` before:
```html
```
after:
```html
```
new files: `vendor.fb.js`, `dummy.fb.js` - legacy js bundles (for older browsers)
modern browser will load `script[type="module"]`, older - `script[nomodule]`
done!
Contributing
------------------------------------------------------------------------------See the [Contributing](CONTRIBUTING.md) guide for details.
License
------------------------------------------------------------------------------This project is licensed under the [MIT License](LICENSE.md).