- 
      
- 
        Save thejmazz/067295d9fb8b22c77be0 to your computer and use it in GitHub Desktop. 
| { | |
| "presets": ["es2015"], | |
| "plugins": ["transform-async-to-generator"] | |
| } | 
| async function foo() { | |
| console.log('async working!') | |
| } | |
| async function bar() { | |
| await foo() | |
| console.log('after foo') | |
| } | |
| bar() | 
| { | |
| "name": "async-await", | |
| "version": "1.0.0", | |
| "description": "", | |
| "main": "index.js", | |
| "scripts": { | |
| "test": "echo \"Error: no test specified\" && exit 1" | |
| }, | |
| "author": "", | |
| "license": "MIT", | |
| "devDependencies": { | |
| "babel-loader": "^6.2.2", | |
| "babel-plugin-transform-async-to-generator": "^6.5.0", | |
| "babel-polyfill": "^6.5.0", | |
| "babel-preset-es2015": "^6.5.0", | |
| "webpack": "^1.12.13" | |
| } | |
| } | 
| module.exports = { | |
| entry: ['babel-polyfill', './index.js'], | |
| output: { | |
| filename: 'bundle.js' | |
| }, | |
| devtool: 'sourcemap', | |
| module: { | |
| loaders: [{ | |
| test: /\.js?$/, | |
| exclude: /(node_modules)/, | |
| loader: 'babel' | |
| }] | |
| } | |
| } | 
@johnsoftek be aware that babel-preset-2017 doesn't work for older versions of safari and firefox, so a solution with async and es2015 will be necessary
Thanks
Is polyfill necessary ?
Wondering if polyfill is necessary also.
Its necessary if your wanting to use certain features - Im having to add it to include the async await features
how about babel 7 ???
every link I checked using the previous version of babel for doing this such thing
We need to use @babel/preset-env which transforms syntax. We need to use @babel/transform-runtime to avoid duplicate code, and config core-js: 3 to polyfill.
babel-plugin-transform-runtime automatically injects Regenerator where generators or async/await are used.
So, installing babel/runtime and @babel/plugin-transform-runtime need to be installed
If you want to be lazy...
babel-preset-2017includesbabel-plugin-transform-async-to-generator.Also,
babel-preset-latestincludesbabel-preset-2015,babel-preset-2016andbabel-preset-2017.