{"id":2822,"date":"2017-09-11T16:19:35","date_gmt":"2017-09-11T08:19:35","guid":{"rendered":"http:\/\/www.daliane.com\/?p=2822"},"modified":"2017-09-11T16:24:37","modified_gmt":"2017-09-11T08:24:37","slug":"30_fen_zhong_ru_men_webpack","status":"publish","type":"post","link":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/30_fen_zhong_ru_men_webpack\/","title":{"rendered":"30\u5206\u949f\u5165\u95e8webpack"},"content":{"rendered":"<div class=\"col middle-column big-middle-column\">\n<div class=\"article\">\n<div class=\"article-heading\">\n<h2>\n\t\t\t\tWebpack \u5165\u95e8\u6559\u7a0b<br \/>\n\t\t\t<\/h2>\n<h3>\n\t\t\t\t<br \/>\n\t\t\t<\/h3>\n<\/p><\/div>\n<div class=\"article-body\">\n<div class=\"article-intro\">\n<p>\n\t\t\t\t\tWebpack \u662f\u4e00\u4e2a\u524d\u7aef\u8d44\u6e90\u52a0\u8f7d\/\u6253\u5305\u5de5\u5177\u3002\u5b83\u5c06\u6839\u636e\u6a21\u5757\u7684\u4f9d\u8d56\u5173\u7cfb\u8fdb\u884c\u9759\u6001\u5206\u6790\uff0c\u7136\u540e\u5c06\u8fd9\u4e9b\u6a21\u5757\u6309\u7167\u6307\u5b9a\u7684\u89c4\u5219\u751f\u6210\u5bf9\u5e94\u7684\u9759\u6001\u8d44\u6e90\u3002\n\t\t\t\t<\/p>\n<blockquote>\n<p>\n\t\t\t\t\t\t\u672c\u7ae0\u8282\u57fa\u4e8e Webpack3.0 \u6d4b\u8bd5\u901a\u8fc7\u3002\n\t\t\t\t\t<\/p>\n<\/blockquote>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/what-is-webpack1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/what-is-webpack1-300x150.png\" alt=\"what-is-webpack\" width=\"300\" height=\"150\" class=\"alignnone size-medium wp-image-2829\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/what-is-webpack1-300x150.png 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/what-is-webpack1-1024x511.png 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u4ece\u56fe\u4e2d\u6211\u4eec\u53ef\u4ee5\u770b\u51fa\uff0cWebpack \u53ef\u4ee5\u5c06\u591a\u79cd\u9759\u6001\u8d44\u6e90 js\u3001css\u3001less \u8f6c\u6362\u6210\u4e00\u4e2a\u9759\u6001\u6587\u4ef6\uff0c\u51cf\u5c11\u4e86\u9875\u9762\u7684\u8bf7\u6c42\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u7b80\u5355\u4e3a\u5927\u5bb6\u4ecb\u7ecd Webpack \u7684\u5b89\u88c5\u4e0e\u4f7f\u7528\u3002\n\t\t\t\t<\/p>\n<h3>\n\t\t\t\t\t\u5b89\u88c5 Webpack<br \/>\n\t\t\t\t<\/h3>\n<p>\n\t\t\t\t\t\u5728\u5b89\u88c5 Webpack \u524d\uff0c\u4f60\u672c\u5730\u73af\u5883\u9700\u8981\u652f\u6301 <a href=\"\/nodejs\/nodejs-install-setup.html\" target=\"_blank\">node.js<\/a>\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u7531\u4e8e npm \u5b89\u88c5\u901f\u5ea6\u6162\uff0c\u672c\u6559\u7a0b\u4f7f\u7528\u4e86\u6dd8\u5b9d\u7684\u955c\u50cf\u53ca\u5176\u547d\u4ee4 cnpm\uff0c\u5b89\u88c5\u4f7f\u7528\u4ecb\u7ecd\u53c2\u7167\uff1a<a href=\"\/nodejs\/nodejs-npm.html\" target=\"_blank\">\u4f7f\u7528\u6dd8\u5b9d NPM \u955c\u50cf<\/a>\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u4f7f\u7528 cnpm \u5b89\u88c5 webpack\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">cnpm<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">install<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> &#8211;<\/span><span class=\"hl-identifier\">g<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<h3>\n\t\t\t\t\t\u521b\u5efa\u9879\u76ee<br \/>\n\t\t\t\t<\/h3>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u521b\u5efa\u4e00\u4e2a\u76ee\u5f55 app\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">mkdir<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">app<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728 app \u76ee\u5f55\u4e0b\u6dfb\u52a0 runoob1.js \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/runoob1.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-builtin\">document<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">write<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">It works.<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728 app \u76ee\u5f55\u4e0b\u6dfb\u52a0 index.html \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/index.html \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-brackets\">&lt;<\/span><span class=\"hl-reserved\">html<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;<\/span><span class=\"hl-reserved\">head<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;<\/span><span class=\"hl-reserved\">meta<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-var\">charset<\/span><span class=\"hl-code\">=<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">utf-8<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;\/<\/span><span class=\"hl-reserved\">head<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;<\/span><span class=\"hl-reserved\">body<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;<\/span><span class=\"hl-reserved\">script<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-var\">type<\/span><span class=\"hl-code\">=<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">text\/javascript<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-var\">src<\/span><span class=\"hl-code\">=<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">bundle.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-var\">charset<\/span><span class=\"hl-code\">=<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">utf-8<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-brackets\">&lt;\/<\/span><span class=\"hl-reserved\">script<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;\/<\/span><span class=\"hl-reserved\">body<\/span><span class=\"hl-brackets\">&gt;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">&lt;\/<\/span><span class=\"hl-reserved\">html<\/span><span class=\"hl-brackets\">&gt;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u4f7f\u7528 webpack \u547d\u4ee4\u6765\u6253\u5305\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u6267\u884c\u4ee5\u4e0a\u547d\u4ee4\u4f1a\u7f16\u8bd1 runoob1.js \u6587\u4ef6\u5e76\u751f\u6210bundle.js \u6587\u4ef6\uff0c\u6210\u529f\u540e\u8f93\u51fa\u4fe1\u606f\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<pre class=\"prettyprint prettyprinted\"><span class=\"typ\">Hash<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> a41c6217554e666594cb <\/span><span class=\"typ\">Version<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> webpack <\/span><span class=\"lit\">1.12<\/span><span class=\"pun\">.<\/span><span class=\"lit\">13<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Time<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> <\/span><span class=\"lit\">50ms<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Asset<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Size<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Chunks<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Chunk<\/span><span class=\"pln\"> <\/span><span class=\"typ\">Names<\/span><span class=\"pln\"> bundle<\/span><span class=\"pun\">.<\/span><span class=\"pln\">js <\/span><span class=\"lit\">1.42<\/span><span class=\"pln\"> kB <\/span><span class=\"lit\">0<\/span><span class=\"pln\"> <\/span><span class=\"pun\">[<\/span><span class=\"pln\">emitted<\/span><span class=\"pun\">]<\/span><span class=\"pln\"> main <\/span><span class=\"pun\">[<\/span><span class=\"lit\">0<\/span><span class=\"pun\">]<\/span><span class=\"pln\"> <\/span><span class=\"pun\">.\/<\/span><span class=\"pln\">runoob1<\/span><span class=\"pun\">.<\/span><span class=\"pln\">js <\/span><span class=\"lit\">29<\/span><span class=\"pln\"> bytes <\/span><span class=\"pun\">{<\/span><span class=\"lit\">0<\/span><span class=\"pun\">}<\/span><span class=\"pln\"> <\/span><span class=\"pun\">[<\/span><span class=\"pln\">built<\/span><span class=\"pun\">]<\/span><\/pre>\n<p>\n\t\t\t\t\t\u5728\u6d4f\u89c8\u5668\u4e2d\u6253\u5f00 index.html\uff0c\u8f93\u51fa\u7ed3\u679c\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/08C6036B-1B89-444A-94D7-4A920105E21B1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/08C6036B-1B89-444A-94D7-4A920105E21B1-300x101.jpg\" alt=\"08C6036B-1B89-444A-94D7-4A920105E21B\" width=\"300\" height=\"101\" class=\"alignnone size-medium wp-image-2830\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/08C6036B-1B89-444A-94D7-4A920105E21B1-300x101.jpg 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/08C6036B-1B89-444A-94D7-4A920105E21B1.jpg 403w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<h3>\n\t\t\t\t\t\u521b\u5efa\u7b2c\u4e8c\u4e2a JS \u6587\u4ef6<br \/>\n\t\t\t\t<\/h3>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u521b\u5efa\u53e6\u5916\u4e00\u4e2a js \u6587\u4ef6 runoob2.js\uff0c\u4ee3\u7801\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/runoob2.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">exports<\/span><span class=\"hl-code\"> = <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">It works from runoob2.js.<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u66f4\u65b0 runoob1.js \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/runoob1.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-builtin\">document<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">write<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-identifier\">require<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">.\/runoob2.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u4f7f\u7528 webpack \u547d\u4ee4\u6765\u6253\u5305\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Hash<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">dcf55acff639ebfe1677<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Version<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">1.12<\/span><span class=\"hl-number\">.13<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Time<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-number\">52<\/span><span class=\"hl-identifier\">ms<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Asset<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Size<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunks<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunk<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Names<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">1.55<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">kB<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">0<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">emitted<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">main<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">41<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">1<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob2<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">46<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728\u6d4f\u89c8\u5668\u8bbf\u95ee\uff0c\u8f93\u51fa\u7ed3\u679c\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/40F7221F-417F-493B-BD47-1C5D03D393701.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/40F7221F-417F-493B-BD47-1C5D03D393701-300x120.jpg\" alt=\"40F7221F-417F-493B-BD47-1C5D03D39370\" width=\"300\" height=\"120\" class=\"alignnone size-medium wp-image-2831\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/40F7221F-417F-493B-BD47-1C5D03D393701-300x120.jpg 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/40F7221F-417F-493B-BD47-1C5D03D393701.jpg 425w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\twebpack \u6839\u636e\u6a21\u5757\u7684\u4f9d\u8d56\u5173\u7cfb\u8fdb\u884c\u9759\u6001\u5206\u6790\uff0c\u8fd9\u4e9b\u6587\u4ef6(\u6a21\u5757)\u4f1a\u88ab\u5305\u542b\u5230 bundle.js \u6587\u4ef6\u4e2d\u3002Webpack \u4f1a\u7ed9\u6bcf\u4e2a\u6a21\u5757\u5206\u914d\u4e00\u4e2a\u552f\u4e00\u7684 id \u5e76\u901a\u8fc7\u8fd9\u4e2a id \u7d22\u5f15\u548c\u8bbf\u95ee\u6a21\u5757\u3002<br \/>\n\u5728\u9875\u9762\u542f\u52a8\u65f6\uff0c\u4f1a\u5148\u6267\u884c runoob1.js \u4e2d\u7684\u4ee3\u7801\uff0c\u5176\u5b83\u6a21\u5757\u4f1a\u5728\u8fd0\u884c require \u7684\u65f6\u5019\u518d\u6267\u884c\u3002\n\t\t\t\t<\/p>\n<hr \/>\n<h2>\n\t\t\t\t\tLOADER<br \/>\n\t\t\t\t<\/h2>\n<p>\n\t\t\t\t\tWebpack \u672c\u8eab\u53ea\u80fd\u5904\u7406 JavaScript \u6a21\u5757\uff0c\u5982\u679c\u8981\u5904\u7406\u5176\u4ed6\u7c7b\u578b\u7684\u6587\u4ef6\uff0c\u5c31\u9700\u8981\u4f7f\u7528 loader \u8fdb\u884c\u8f6c\u6362\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u6240\u4ee5\u5982\u679c\u6211\u4eec\u9700\u8981\u5728\u5e94\u7528\u4e2d\u6dfb\u52a0 css \u6587\u4ef6\uff0c\u5c31\u9700\u8981\u4f7f\u7528\u5230 css-loader \u548c style-loader\uff0c\u4ed6\u4eec\u505a\u4e24\u4ef6\u4e0d\u540c\u7684\u4e8b\u60c5\uff0ccss-loader \u4f1a\u904d\u5386 CSS \u6587\u4ef6\uff0c\u7136\u540e\u627e\u5230 url() \u8868\u8fbe\u5f0f\u7136\u540e\u5904\u7406\u4ed6\u4eec\uff0cstyle-loader \u4f1a\u628a\u539f\u6765\u7684 CSS \u4ee3\u7801\u63d2\u5165\u9875\u9762\u4e2d\u7684\u4e00\u4e2a style \u6807\u7b7e\u4e2d\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\u6765\u5b89\u88c5  css-loader \u548c style-loader(\u5168\u5c40\u5b89\u88c5\u9700\u8981\u53c2\u6570 -g)\u3002\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">cnpm<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">install<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">css-loader<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">style-loader<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u6267\u884c\u4ee5\u4e0a\u547d\u4ee4\u540e\uff0c\u4f1a\u518d\u5f53\u524d\u76ee\u5f55\u751f\u6210 node_modules \u76ee\u5f55\uff0c\u5b83\u5c31\u662f css-loader \u548c style-loader \u7684\u5b89\u88c5\u76ee\u5f55\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u521b\u5efa\u4e00\u4e2a style.css \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/style.css \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">body<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-reserved\">background:<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-var\">yellow<\/span><span class=\"hl-reserved\"><\/span><span class=\"hl-code\">; <\/span><span class=\"hl-brackets\">}<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u4fee\u6539 runoob1.js \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/runoob1.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">require<\/span><span class=\"hl-code\">(&#8220;!<\/span><span class=\"hl-identifier\">style-loader<\/span><span class=\"hl-code\">!<\/span><span class=\"hl-identifier\">css-loader<\/span><span class=\"hl-code\">!.\/<\/span><span class=\"hl-identifier\">style<\/span><span class=\"hl-identifier\">.css<\/span><span class=\"hl-code\">&#8220;); <\/span><span class=\"hl-identifier\">document<\/span><span class=\"hl-identifier\">.write<\/span><span class=\"hl-code\">(<\/span><span class=\"hl-identifier\">require<\/span><span class=\"hl-code\">(&#8220;.\/<\/span><span class=\"hl-identifier\">runoob2<\/span><span class=\"hl-identifier\">.js<\/span><span class=\"hl-code\">&#8220;));<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u4f7f\u7528 webpack \u547d\u4ee4\u6765\u6253\u5305\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Hash<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">a9ef45165f81c89a4363<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Version<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">1.12<\/span><span class=\"hl-number\">.13<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Time<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-number\">619<\/span><span class=\"hl-identifier\">ms<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Asset<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Size<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunks<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunk<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Names<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">11.8<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">kB<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">0<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">emitted<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">main<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">76<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">5<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob2<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">46<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> + <\/span><span class=\"hl-number\">4<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">hidden<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">modules<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728\u6d4f\u89c8\u5668\u8bbf\u95ee\uff0c\u8f93\u51fa\u7ed3\u679c\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1-300x154.jpg\" alt=\"9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4 (1)\" width=\"300\" height=\"154\" class=\"alignnone size-medium wp-image-2832\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1-300x154.jpg 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1.jpg 465w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\trequire CSS \u6587\u4ef6\u7684\u65f6\u5019\u90fd\u8981\u5199 loader \u524d\u7f00 <b>!style-loader!css-loader!<\/b>\uff0c\u5f53\u7136\u6211\u4eec\u53ef\u4ee5\u6839\u636e\u6a21\u5757\u7c7b\u578b\uff08\u6269\u5c55\u540d\uff09\u6765\u81ea\u52a8\u7ed1\u5b9a\u9700\u8981\u7684 loader\u3002 \u5c06 runoob1.js \u4e2d\u7684 <b>require(&#8220;!style-loader!css-loader!.\/style.css&#8221;)<\/b> \u4fee\u6539\u4e3a <b>require(&#8220;.\/style.css&#8221;)<\/b> \uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/runoob1.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">require<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">.\/style.css<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\">; <\/span><span class=\"hl-builtin\">document<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">write<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-identifier\">require<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">.\/runoob2.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u7136\u540e\u6267\u884c\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">bind<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-quotes\">&#8216;<\/span><span class=\"hl-string\">css=style-loader!css-loader<\/span><span class=\"hl-quotes\">&#8216;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728\u6d4f\u89c8\u5668\u8bbf\u95ee\uff0c\u8f93\u51fa\u7ed3\u679c\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1-300x154.jpg\" alt=\"9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4 (1)\" width=\"300\" height=\"154\" class=\"alignnone size-medium wp-image-2832\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1-300x154.jpg 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/9ABEBA1F-DF8C-4019-BC6A-5B8D2A3A7BA4-1.jpg 465w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u663e\u7136\uff0c\u8fd9\u4e24\u79cd\u4f7f\u7528 loader \u7684\u65b9\u5f0f\uff0c\u6548\u679c\u662f\u4e00\u6837\u7684\u3002\n\t\t\t\t<\/p>\n<hr \/>\n<h2>\n\t\t\t\t\t\u914d\u7f6e\u6587\u4ef6<br \/>\n\t\t\t\t<\/h2>\n<p>\n\t\t\t\t\t\u6211\u4eec\u53ef\u4ee5\u5c06\u4e00\u4e9b\u7f16\u8bd1\u9009\u9879\u653e\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\uff0c\u4ee5\u4fbf\u4e8e\u7edf\u4e00\u7ba1\u7406\uff1a\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u521b\u5efa webpack.config.js \u6587\u4ef6\uff0c\u4ee3\u7801\u5982\u4e0b\u6240\u793a\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/webpack.config.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">exports<\/span><span class=\"hl-code\"> = <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">entry<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">.\/runoob1.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">output<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">path<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">__dirname<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">filename<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">bundle.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">loaders<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">test<\/span><span class=\"hl-code\">: \/.<\/span><span class=\"hl-identifier\">css<\/span><span class=\"hl-code\">$\/, <\/span><span class=\"hl-identifier\">loader<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">style-loader!css-loader<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u63a5\u4e0b\u6765\u6211\u4eec\u53ea\u9700\u8981\u6267\u884c webpack \u547d\u4ee4\u5373\u53ef\u751f\u6210 bundle.js \u6587\u4ef6\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Hash<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-number\">4<\/span><span class=\"hl-identifier\">fdefac099a5f36ff74b<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Version<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">1.12<\/span><span class=\"hl-number\">.13<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Time<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-number\">576<\/span><span class=\"hl-identifier\">ms<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Asset<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Size<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunks<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Chunk<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">Names<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bundle<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">11.8<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">kB<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">0<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">emitted<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">main<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob1<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">65<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-number\">5<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> .\/<\/span><span class=\"hl-identifier\">runoob2<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">js<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-number\">46<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">bytes<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-number\">0<\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-identifier\">built<\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> + <\/span><span class=\"hl-number\">4<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">hidden<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">modules<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\twebpack \u547d\u4ee4\u6267\u884c\u540e\uff0c\u4f1a\u9ed8\u8ba4\u8f7d\u5165\u5f53\u524d\u76ee\u5f55\u7684 webpack.config.js \u6587\u4ef6\u3002\n\t\t\t\t<\/p>\n<hr \/>\n<h2>\n\t\t\t\t\t\u63d2\u4ef6<br \/>\n\t\t\t\t<\/h2>\n<p>\n\t\t\t\t\t\u63d2\u4ef6\u5728 webpack \u7684\u914d\u7f6e\u4fe1\u606f plugins \u9009\u9879\u4e2d\u6307\u5b9a\uff0c\u7528\u4e8e\u5b8c\u6210\u4e00\u4e9b loader \u4e0d\u80fd\u5b8c\u6210\u7684\u5de5\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\twebpack \u81ea\u5e26\u4e00\u4e9b\u63d2\u4ef6\uff0c\u4f60\u53ef\u4ee5\u53ef\u4ee5\u901a\u8fc7 cnpm \u5b89\u88c5\u4e00\u4e9b\u63d2\u4ef6\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u4f7f\u7528\u5185\u7f6e\u63d2\u4ef6\u9700\u8981\u901a\u8fc7\u4ee5\u4e0b\u547d\u4ee4\u6765\u5b89\u88c5\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">cnpm<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">install<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">save<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">dev<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u6bd4\u5982\u6211\u4eec\u53ef\u4ee5\u5b89\u88c5\u5185\u7f6e\u7684 BannerPlugin \u63d2\u4ef6\uff0c\u7528\u4e8e\u5728\u6587\u4ef6\u5934\u90e8\u8f93\u51fa\u4e00\u4e9b\u6ce8\u91ca\u4fe1\u606f\u3002\n\t\t\t\t<\/p>\n<p>\n\t\t\t\t\t\u4fee\u6539 webpack.config.js\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<div class=\"example\">\n<h2 class=\"example\">\n\t\t\t\t\t\tapp\/webpack.config.js \u6587\u4ef6<br \/>\n\t\t\t\t\t<\/h2>\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-reserved\">var<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\">=<\/span><span class=\"hl-identifier\">require<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8216;<\/span><span class=\"hl-string\">webpack<\/span><span class=\"hl-quotes\">&#8216;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\">; <\/span><span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">exports<\/span><span class=\"hl-code\"> = <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">entry<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">.\/runoob1.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">output<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">path<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-identifier\">__dirname<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">filename<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">bundle.js<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">module<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">loaders<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">{<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">test<\/span><span class=\"hl-code\">: \/.<\/span><span class=\"hl-identifier\">css<\/span><span class=\"hl-code\">$\/, <\/span><span class=\"hl-identifier\">loader<\/span><span class=\"hl-code\">: <\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-string\">style-loader!css-loader<\/span><span class=\"hl-quotes\">&#8220;<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\">, <\/span><span class=\"hl-identifier\">plugins<\/span><span class=\"hl-code\">:<\/span><span class=\"hl-brackets\">[<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-reserved\">new<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\">.<\/span><span class=\"hl-identifier\">BannerPlugin<\/span><span class=\"hl-brackets\">(<\/span><span class=\"hl-quotes\">&#8216;<\/span><span class=\"hl-string\">\u83dc\u9e1f\u6559\u7a0b webpack \u5b9e\u4f8b<\/span><span class=\"hl-quotes\">&#8216;<\/span><span class=\"hl-brackets\">)<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">]<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-brackets\">}<\/span><span class=\"hl-code\">;<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u7136\u540e\u8fd0\u884c:\n\t\t\t\t<\/p>\n<pre class=\"prettyprint prettyprinted\"><span class=\"pln\">webpack<\/span><\/pre>\n<p>\n\t\t\t\t\t\u6253\u5f00 bundle.js\uff0c\u53ef\u4ee5\u770b\u5230\u6587\u4ef6\u5934\u90e8\u51fa\u73b0\u4e86\u6211\u4eec\u6307\u5b9a\u7684\u6ce8\u91ca\u4fe1\u606f\u3002\n\t\t\t\t<\/p>\n<hr \/>\n<h2>\n\t\t\t\t\t\u5f00\u53d1\u73af\u5883<br \/>\n\t\t\t\t<\/h2>\n<p>\n\t\t\t\t\t\u5f53\u9879\u76ee\u9010\u6e10\u53d8\u5927\uff0cwebpack \u7684\u7f16\u8bd1\u65f6\u95f4\u4f1a\u53d8\u957f\uff0c\u53ef\u4ee5\u901a\u8fc7\u53c2\u6570\u8ba9\u7f16\u8bd1\u7684\u8f93\u51fa\u5185\u5bb9\u5e26\u6709\u8fdb\u5ea6\u548c\u989c\u8272\u3002\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">progress<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">colors<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5982\u679c\u4e0d\u60f3\u6bcf\u6b21\u4fee\u6539\u6a21\u5757\u540e\u90fd\u91cd\u65b0\u7f16\u8bd1\uff0c\u90a3\u4e48\u53ef\u4ee5\u542f\u52a8\u76d1\u542c\u6a21\u5f0f\u3002\u5f00\u542f\u76d1\u542c\u6a21\u5f0f\u540e\uff0c\u6ca1\u6709\u53d8\u5316\u7684\u6a21\u5757\u4f1a\u5728\u7f16\u8bd1\u540e\u7f13\u5b58\u5230\u5185\u5b58\u4e2d\uff0c\u800c\u4e0d\u4f1a\u6bcf\u6b21\u90fd\u88ab\u91cd\u65b0\u7f16\u8bd1\uff0c\u6240\u4ee5\u76d1\u542c\u6a21\u5f0f\u7684\u6574\u4f53\u901f\u5ea6\u662f\u5f88\u5feb\u7684\u3002\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">progress<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">colors<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">watch<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5f53\u7136\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528 webpack-dev-server \u5f00\u53d1\u670d\u52a1\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u80fd\u901a\u8fc7 localhost:8080 \u542f\u52a8\u4e00\u4e2a express \u9759\u6001\u8d44\u6e90 web \u670d\u52a1\u5668\uff0c\u5e76\u4e14\u4f1a\u4ee5\u76d1\u542c\u6a21\u5f0f\u81ea\u52a8\u8fd0\u884c webpack\uff0c\u5728\u6d4f\u89c8\u5668\u6253\u5f00 http:\/\/localhost:8080\/ \u6216 http:\/\/localhost:8080\/webpack-dev-server\/ \u53ef\u4ee5\u6d4f\u89c8\u9879\u76ee\u4e2d\u7684\u9875\u9762\u548c\u7f16\u8bd1\u540e\u7684\u8d44\u6e90\u8f93\u51fa\uff0c\u5e76\u4e14\u901a\u8fc7\u4e00\u4e2a socket.io \u670d\u52a1\u5b9e\u65f6\u76d1\u542c\u5b83\u4eec\u7684\u53d8\u5316\u5e76\u81ea\u52a8\u5237\u65b0\u9875\u9762\u3002\n\t\t\t\t<\/p>\n<div class=\"example\">\n<div class=\"example_code\">\n<div class=\"hl-main\">\n\t\t\t\t\t\t\t<span class=\"hl-comment\"># \u5b89\u88c5<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">cnpm<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">install<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">dev<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">server<\/span><span class=\"hl-code\"> &#8211;<\/span><span class=\"hl-identifier\">g<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-comment\"># \u8fd0\u884c<\/span><span class=\"hl-code\"> <\/span><span class=\"hl-identifier\">webpack<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">dev<\/span><span class=\"hl-code\">&#8211;<\/span><span class=\"hl-identifier\">server<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">progress<\/span><span class=\"hl-code\"> &#8212;<\/span><span class=\"hl-identifier\">colors<\/span>\n\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>\n\t\t\t\t\t\u5728\u6d4f\u89c8\u5668\u6253\u5f00 http:\/\/localhost:8080\/ \u8f93\u51fa\u7ed3\u679c\u5982\u4e0b\uff1a\n\t\t\t\t<\/p>\n<p><\/p>\n<p>\n\t\t\t\t\t<a href=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/47B0234F-E1F0-43FF-8F80-050514A1A25C1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/47B0234F-E1F0-43FF-8F80-050514A1A25C1-300x103.jpg\" alt=\"47B0234F-E1F0-43FF-8F80-050514A1A25C\" width=\"300\" height=\"103\" class=\"alignnone size-medium wp-image-2833\" srcset=\"http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/47B0234F-E1F0-43FF-8F80-050514A1A25C1-300x103.jpg 300w, http:\/\/www.daliane.com\/wp-content\/uploads\/2017\/09\/47B0234F-E1F0-43FF-8F80-050514A1A25C1.jpg 468w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Webpack \u5165\u95e8\u6559\u7a0b Webpack \u662f\u4e00\u4e2a\u524d\u7aef\u8d44\u6e90\u52a0\u8f7d\/\u6253\u5305\u5de5\u5177\u3002\u5b83\u5c06\u6839\u636e\u6a21\u5757\u7684\u4f9d\u8d56\u5173\u7cfb\u8fdb\u884c\u9759\u6001\u5206\u6790\uff0c\u7136&#8230;<\/p>\n","protected":false},"author":2,"featured_media":2829,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[10,38],"tags":[169],"_links":{"self":[{"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/posts\/2822"}],"collection":[{"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/comments?post=2822"}],"version-history":[{"count":3,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/posts\/2822\/revisions"}],"predecessor-version":[{"id":2835,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/posts\/2822\/revisions\/2835"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/media\/2829"}],"wp:attachment":[{"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/media?parent=2822"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/categories?post=2822"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.daliane.com\/category\/jinjiaoyou\/wp-json\/wp\/v2\/tags?post=2822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}