webpack 学习

1.1 什么是Webpack

​ Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。

​ 从图中我们可以看出,Webpack 可以将多种静态资源 js、css、less 转换成一个静态文件,减少了页面的请求。 接下来我们简单为大家介绍 Webpack 的安装与使用

1.2 Webpack安装

全局安装

复制代码
npm install webpack -g
npm install webpack-cli -g

安装后查看版本号

复制代码
webpack -v

1.3 快速入门

13.1 JS打包

(1)创建src文件夹,创建bar.js

js 复制代码
exports.info=function(str){
   document.write(str);
}

(2)src下创建logic.js

js 复制代码
exports.add=function(a,b){
	return a+b;
}

(3)src下创建main.js

js 复制代码
var bar= require('./bar');
var logic= require('./logic');
bar.info( 'Hello world!'+ logic.add(100,200));

(4)创建配置文件webpack.config.js ,该文件与src处于同级目录

js 复制代码
var path = require("path");
module.exports = {
	entry: './src/main.js',
	output: {
		path: path.resolve(__dirname, './dist'),
		filename: 'bundle.js'
	}
};

以上代码的意思是:读取当前目录下src文件夹中的main.js(入口文件)内容,把对应的js文件打包,打包后的文件放入当前目录的dist文件夹下,打包后的js文件名为bundle.js

(5)执行编译命令

复制代码
webpack

执行后查看bundle.js 会发现里面包含了上面两个js文件的内容

(7)创建index.html ,引用bundle.js

html 复制代码
<!doctype html>
<html>
  <head>  
  </head>
  <body>   
    <script src="dist/bundle.js"></script>
  </body>
</html>

测试调用index.html,会发现有内容输出

1.3.2 CSS打包

(1)安装style-loader和 css-loader

Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用 loader 进行转换。

Loader 可以理解为是模块和资源的转换器,它本身是一个函数,接受源文件作为参数,返回转换的结果。这样,我们就可以通过 require 来加载任何类型的模块或文件,比如 CoffeeScript、 JSX、 LESS 或图片。首先我们需要安装相关Loader插件,css-loader 是将 css 装载到 javascript;style-loader 是让 javascript 认识css

复制代码
cnpm install style-loader css-loader --save-dev

(2)修改webpack.config.js

js 复制代码
var path = require("path");
module.exports = {
	entry: './src/main.js',
	output: {
		path: path.resolve(__dirname, './dist'),
		filename: 'bundle.js'
	},
	module: {
		rules: [  
            {  
                test: /\.css$/,  
                use: ['style-loader', 'css-loader']
            }  
        ]  
	}
};

(3)在src文件夹创建css文件夹,css文件夹下创建css1

css 复制代码
body{
 background:red;
}

(4)修改main.js ,引入css1.css

复制代码
require('./css1.css');

(5)重新运行webpack

(6)运行index.html看看背景是不是变成红色啦?

相关推荐
gongzemin6 分钟前
怎么在VS Code 调试vue2 源码
前端·vue.js
目标是分享一切11 分钟前
P4语言学习过程【环境安装+p4官方tutorials】
学习
烟话614 分钟前
Vue3响应式原理【通俗理解】
前端·javascript·vue.js
浩星24 分钟前
electron系列5:深入理解Electron打包
前端·javascript·electron
患得患失94929 分钟前
【前端WebSocket】心跳功能,心跳重置策略、双向确认(Ping-Pong) 以及 指数退避算法(Exponential Backoff)
前端·websocket·算法
英俊潇洒美少年30 分钟前
React 实现 AI 流式打字机对话:SSE 分包粘包处理 + 并发优化
前端·javascript·react.js
chQHk57BN33 分钟前
前端测试入门:Jest、Cypress等测试框架使用教程
前端
Stella Blog39 分钟前
狂神Java基础学习笔记Day01
java·笔记·学习
遇见你...42 分钟前
前端技术知识点
前端
AC赳赳老秦1 小时前
OpenClaw image-processing技能实操:批量抠图、图片尺寸调整,适配办公需求
开发语言·前端·人工智能·python·深度学习·机器学习·openclaw