[webpack]path、publicPath、--content-base 理解


附源碼:http://files.cnblogs.com/files/chenshao/startPublic.rar

 1 'use strict';
 2 var webpack = require('webpack');
 3 var path = require('path');
 4 
 5 //CLI:webpack-dev-server --content-base public
 6 
 7 module.exports = {
 8   entry: path.join(__dirname,"src","entry.js"),
 9   output: {
10     /*
11         webpack-dev-server環境下,path、publicPath、--content-base 區別與聯系
12         path:指定編譯目錄而已(/build/js/),不能用於html中的js引用。
13         publicPath:虛擬目錄,自動指向path編譯目錄(/assets/ => /build/js/)。html中引用js文件時,必須引用此虛擬路徑(但實際上引用的是內存中的文件,既不是/build/js/也不是/assets/)。
14         --content-base:必須指向應用根目錄(即index.html所在目錄),與上面兩個配置項毫無關聯。
15         ===================================================
16         發布至生產環境:
17         1.webpack進行編譯(當然是編譯到/build/js/)
18         2.把編譯目錄(/build/js/)下的文件,全部復制到/assets/目錄下(注意:不是去修改index.html中引用bundle.js的路徑)
19     */
20     path: path.join(__dirname,"build","js"),
21     publicPath: "/assets/",
22     //publicPath: "http://cdn.com/assets/",//你也可以加上完整的url,效果與上面一致(不需要修改index.html中引用bundle.js的路徑,但發布生產環境時,需要使用插件才能批量修改引用地址為cdn地址)。
23     filename: 'bundle.js'
24   }
25 };

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM