Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Webpack pack your web
Search
Yuanhsiang Cheng
May 15, 2015
Technology
12k
17
Share
Webpack pack your web
@Modern Web 2015
Yuanhsiang Cheng
May 15, 2015
More Decks by Yuanhsiang Cheng
See All by Yuanhsiang Cheng
How to rebuild a websocket service by golang and redis
yhsiang
0
1.1k
From React to React Native Web
yhsiang
0
200
Rethink React in Elm
yhsiang
0
1.1k
開源與工程師的自我修養
yhsiang
0
220
Sayit in Taiwan
yhsiang
0
200
LY sayit
yhsiang
0
170
2015 Summer of ?
yhsiang
0
320
How to be a good wan-jun
yhsiang
1
180
Experience in building isomorphic app
yhsiang
11
780
Other Decks in Technology
See All in Technology
音声言語モデル手法に関する発表の紹介
kzinmr
0
160
VespaのParent Childを用いたフィードパフォーマンスの改善
taking
0
260
Agent の「自由」と「安全」〜未来に向けて今できること〜
katayan
0
340
拝啓、あの夏の僕へ〜あなたも知っているApp Runnerの世界〜
news_it_enj
0
210
アクセシビリティはすべての人のもの
tomokusaba
0
270
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
100k
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
360
新卒エンジニア研修、ハンズオンの設計における課題と実践知/ #tachikawaany
nishiuma
2
120
大学職員のための生成AI最前線 :最前線を、AIガバナンスとして読み直すためのTips
gmoriki
2
3.6k
GitHub Copilot Dev Days
tomokusaba
0
150
色を視る
yuzneri
0
320
世界の中心でApp Runnerを叫ぶ FINAL
tsukuboshi
0
240
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
55k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
The browser strikes back
jonoalderson
0
1k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
450
First, design no harm
axbom
PRO
2
1.2k
GitHub's CSS Performance
jonrohan
1032
470k
Utilizing Notion as your number one productivity tool
mfonobong
4
300
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
A Tale of Four Properties
chriscoyier
163
24k
The Language of Interfaces
destraynor
162
26k
Transcript
Webpack pack your web Ly Cheng Modern Web 2015
LY yhsiang lyforever
國會無雙 市⻑⾧長給問
先調查⼀一下
Webpack module bundler
https://twitter.com/mjackson/status/584227818910777345
先講⼀一段故事
<script src=‘jquery.js’></script> <script src=‘app.js’></script> Uncaught Referencer Error jQuery is not
defined
https://markb4.files.wordpress.com/2013/05/and-then-what-happened.jpeg
CommonJS vs AMD Server-side reuse vs Parallel loading
CommonJS AMD Works in the browser without build http://pichost.me/1835208/
But Finally, you have to build sth.
ES6 Harmony not ready for native browser
Not Only Javascript css, images, fonts, html ….
Assets pipeline In Rails, but now …
http://fccowasso.com/wp-content/uploads/2013/09/hope.jpg
http://webpack.github.io/
Webpack has Code Splitting Loaders Plugins Hot Module Replacement
http://webpack.github.io/docs/comparison.html Comparison Browserify vs Webpack blog.namangoel.com/browserify-vs-webpack-js-drama
Basic Usage
Configuration CLI and webpack.config.js
plugins devtool target
loaders preprocess files http://webpack.github.io/docs/loaders.html
loaders preprocess files http://webpack.github.io/docs/loaders.html pre-* / loaders / post-*
File loader filename template http://webpack.github.io/docs/loader-conventions.html url-loader, json-loader …
plugins make webpack flexible
Extract-text extract inline css to files
Code splitting load on demand idea from GWT
CommonJS: require.ensure AMD: require
{c, d} will be an additional chunk.
Stylesheets
require css create style element inline css extract-text-plugin css files
Shimming modules
require("imports?$=jquery!./file.js") var XModule = require("exports?XModule!./file.js")
Hot Module Replacement Livereload for every module
http://webpack.github.io/docs/hot-module-replacement-with-webpack.html
Entry webpack-dev-server/client? http://localhost:2992 webpack/hot/only-dev-server Plugins new webpack.HotModuleReplacementPlugin()
Webpack analyze
http://webpack.github.io/analyse/
None
Webpack 2 webpack/concord
How We Use Webpack
Build with React watchout-tw/prototype-seed
Directory Structure component-based, SUITCSS
How about API
Proxy server webpack-dev-server and express use proxy option now!
Special thank to @tomchentw
Thank you
Recommendations https://github.com/petehunt/webpack-howto webpack-howto https://github.com/webpack/react-starter react-starter