虽然各式各样的工具会导入到专案中来提高效率,但是浏览器能看懂得档案只有 HTML、CSS、JavaScript,使用工具撰写的 SCSS、SASS...等档案是没有办法直接运作的,Webpack 像是一个超级工厂,解读我们的各种开发文件,并且打包制作成浏览器看得懂的三大语言。
事前准备
安装 webpack 和 指令工具(webpack-cli)
$ npm i -D webpack webpack-cli
文章开头有提到 Webpack 像是一个超级工厂,而放原料的地方就是『进入点』,加工完的成品会放到『输出点』,在 Webpack 官网首页的图片非常清楚的说明了这个概念。
src
目录需要自行在专案资料夹下建立(自订『进入点』和『输出点』方式在下面段落说明)。src
资料夹後,在里面新增一个index.js
档案,并且加入一些程序码,後续测试使用。let a = 'Hello';
let b = 'webpack';
console.log(`${a}, ${b}!!!`);
安装好 Webpack 後并不会出现什麽按钮让你使用,而是要在专案的设定档里面自订指令来执行 Webpack:
"指令名称": "执行内容"
这边已经有先撰写了一段测试指令,可以先测试看这个指令是不是能正常运作。// 使用 npm run 来执行 script
$ npm run test
// 部分特殊的名称可以不需要加 run
$ npm test
"build": "webpack"
"build" 名称可以任意更改,要改成 "rm -rf/" 也没问题(执行含空格的指令名称需要用引号包起来)。
$ npm run build
出现以下画面表示尚未设定为开发模式或是上线模式,不影响执行,後续再设定就好。
执行成功後,专案资料夹会出现一个 dist 资料夹,里面有一个 main.js 档案,内容就是 Webpack 处理完的结果。
console.log("Hello, webpack!!!");
// 引用 node.js 里面的路径(path)模组,在下面会用到
const path = require('path');
module.exports = {
// 设定进入点的档案路径和档名
entry: './src/index.js',
// 设定输出点
output: {
// 设定路径,这边使用到刚刚宣告的 path,__dirname 可以取得这个专案资料夹的完整绝对路径,dist 名称可以自行更改,也可以空值(''),就会放到专案资料夹第一层(通常不会去改动他)
path: path.resolve(__dirname, 'dist'),
// 设定档名,常见的输出档名为 main.js 或 bundle.js,可以自行更改
filename: 'bundle.js',
},
};
npm run build
,检查设定是否成功。在没有设定模式时执行 Webpack 都会跳出警告,有两种方式可以解决:
自订指令带入参数:编辑 package.json 档案的 "scripts"
// 修改原本的 build 指令,改成两个指令对应不同模式
// 加入开发版指令
"dev": "webpack --mode development",
// 加入上线版指令
"deploy": "webapck --mode production"
修改 Webpack 环境设定:编辑 webpack.config.js
module.exports = {
// 内容填入 development 或是 production
mode: 'development',
};
开发模式与上线模式的差别:
>>: [Day7] Local File Inclusion / Remote File Inclusion
写在前面 Placeholder for test test Placeholder for tes...
Hello, 各位 iT邦帮忙 的粉丝们大家好~~~ 本篇是 Re: 从零开始用 Xamarin 技...
基本上试题(Item)的部分都差不多介绍完了 接下来是出多份考卷的主要部分---PageBreak ...
软功就是什麽都要 Hello 一下之 Hello terraform 这张就会开始动手做了,还没设定...
学习 Git 时,常常都是在终端机(Terminal)操作,虽然现在有很多图形介面工具(GUI,Gr...