77 lines
3.2 KiB
Markdown
77 lines
3.2 KiB
Markdown
---
|
|
title: Webpack Begone, ES6 is HERE!
|
|
author: geoff-doty
|
|
date: 2017-12-24
|
|
template: article.jade
|
|
---
|
|
|
|
I know. I know. Blasphame, but I really hate [Webpack](https://webpack.js.org/), not the idea of it but what it turned web development into - a bloated tangled mess of **headaches you don't need**.
|
|
|
|
Lets take a jaded closer look...
|
|
|
|
## Webpack Rant
|
|
|
|
[Webpack](https://webpack.js.org/) became the defacto go-to solution to get the latest [es6](http://es6-features.org) javascript language functionality into a developers pipeline via transpilers like [Babeljs](https://babeljs.io/) and support the overly bloated non-standard web component soultion as the [ReactJS](https://reactjs.org/) framework (batteries NOT included). Sure [Webpack](https://webpack.js.org/) does more or can do more, but in the end developers just want to develop with [es6](http://es6-features.org) features, **however** this was only supose to be a temporay *polyfill*, until browsers started supporting the next version of Javascript -- ES6.
|
|
|
|
**ES6 browser support is [HERE](http://kangax.github.io/compat-table/es6/)**
|
|
|
|
99% of the browsers support it, even Microsoft Edge, Safari, Chrome, Opera, Firefox...
|
|
|
|
But WebPack left us for this constant jonesing that put a permanent handycap on web developers that reminds me of those old drug commercials
|
|
|
|
"I work more, so I can do more drugs, so I can work more..."
|
|
|
|
mantra turned to become
|
|
|
|
"I work more, so I can add more configuration, so I can work more..."
|
|
|
|
Dont know about you, but tinkering around with configurations all day, and watching build processes move ever **S L O W E R** is not what I signed up for.
|
|
|
|
So...
|
|
|
|
**PULL THE ROTTING PLUG!**
|
|
|
|
Stop getting distracted by the *shiny* future that *may* never come, and focus on the here and now. **Here** and **now** is pretty awesome. We have native ES6 language support in all evergreen browsers.
|
|
|
|
No webpack.
|
|
|
|
No configuration.
|
|
|
|
No BS.
|
|
|
|
Write the code you love, and free yourself from the **headaches you dont need.**
|
|
|
|
### How Does it work
|
|
|
|
Everything starts with your `index.html` page, or what ever html page your building, and you turn your `script` includes from this
|
|
|
|
|
|
<script src="mycode.js"></script>
|
|
|
|
into this
|
|
|
|
<script type="module" src="mycode.js"></script>
|
|
|
|
and those lazy import statements you have that dont include the extension
|
|
|
|
|
|
import Code from './src/Code';
|
|
|
|
should have the extension
|
|
|
|
import Code from './src/Code.js';
|
|
|
|
and everything is right with the world and we can find peace and happiness for all developers.
|
|
|
|
So...
|
|
|
|
**WEBPACK BEGONE! ES6 IS HERE**
|
|
|
|
But I hear you screaming at the screen, **what about minification**, and ES5 support, and...
|
|
|
|
I know [WebPack]() has its uses, or rather a build process has its uses, but a lot of that can be done much simpler...simpler for any developer to understand -- like [Gulp](). A few *gulp* scripts could solve your problem, and you can break-up to operations, combine and mix and match as is important to each developer.
|
|
|
|
My biggest advocate for having a build process is for the final build, aka **PRODUCTION**, but code-by-the-hour should just work -- everywhere, as the web was designed.
|
|
|
|
**Rant Over.**
|