Webpack 入门 基础知识
写一个Render对象可以在#root元素下挂载字符串的对象,使用ES Module语法导入后通过Webpack打包
Step 0. 创建npm项目 hello-webpack
-
mkdir hello-webpack && cd hello-webpack -
mkdir src && mkdir dist创建源码目录 -
npm initdemo项目一路默认即可 -
安装webpack/webpack-cli
npm install webpack webpack-cli --save-dev
Step 1. 项目根路径创建index.html
这是作为项目对外展示的主页面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="root"></div>
<script src="./dist/bundle.js"></script>
</body>
</html>
./dist/bundle.js还不存在,稍后webpack会自动打包出来,这里先导入
Step 2. 编写src/render.js和src/index.js
src/render.js
class Render {
message(mountPoint, text) {
var message = document.createElement("div")
message.innerText = text
mountPoint.append(message)
}
}
export default Render;
src/index.js
import Render from './render'
new Render().message(document.getElementById("root"), "Hello, World!")
Setp 3. 编写webpack配置文件webpack.config.js
const path = require("path")
var config = {
mode: 'development',
entry: {
main: './src/index.js'
},
output: {
filename: "bundle.js",
path: path.resolve(__dirname, "dist")
}
}
module.exports = config
Step 4. 创建Npm Script
package.json中的scripts对象添加一栏build命令
{
"name": "hello-webpack",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack --config ./webpack.config.js"
},
"author": "",
"license": "ISC",
"devDependencies": {
"webpack": "^5.4.0",
"webpack-cli": "^4.2.0"
}
}
在项目根路径下执行命令npm run build,开始打包,完成
页面成功显示Hello, World!

浙公网安备 33010602011771号