首页 > 其他分享 >webpack使用

webpack使用

时间:2022-10-09 15:03:36浏览次数:51  
标签:npm loader webpack css 使用 js 打包


一、概述

模块化和打包

 Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按 照指定的规则生成对应的静态资源。 从图中我们可以看出,Webpack 可以将多种静态资源 js、css、less 转换成一个静态文件,减少了页面的 请求

webpack使用_javascript

webpack使用_webpack_02

 和其他打包工具对比

webpack使用_javascript_03

二、webpack  npm  node 三者之间的关系

webpack用来模块化打包,但是需要node环境支持,会用到很多依赖包,npm就是node中用来管理这些依赖包

webpack使用_前端_04

三、webpack基本使用

1、Webpack安装

1、全局安装

npm install -g webpack webpack-cli

2、安装后查看版本号

webpack -v

3、初始化项目

创建webpack文件夹并进入

npm init -y

创建src文件夹 ,src下创建common.js


exports.info = function (str) { document.write(str); }


src下创建utils.js


exports.add = function (a, b) { return a + b; }


src下创建main.js


const common = require('./common'); const utils = require('./utils'); common.info('Hello world!' + utils.add(100, 200));


2、js打包

webpack目录下创建配置文件webpack.config.js 以下配置的意思是:读取当前项目目录下src文件夹中的main.js(入口文件)内容,分析资源依赖,把相 关的js文件打包,打包后的文件放入当前目录的dist文件夹下,打包后的js文件名为bundle.js


const path = require("path"); //Node.js内置模块 module.exports = { entry: './src/main.js', //配置入口文件 output: { path: path.resolve(__dirname, './dist'), //输出路径,__dirname:当前文件所在路 径 filename: 'bundle.js' //输出文件 } }


命令行执行编译命令


webpack #有黄色警告 webpack --mode=development #没有警告 #执行后查看bundle.js 里面包含了上面两个js文件的内容并惊醒了代码压缩


也可以配置项目的npm运行命令,修改package.json文件


"scripts": { //..., "dev": "webpack --mode=development" }


运行npm命令执行打包

npm run dev

webpack目录下创建index.html 引用bundle.js


<body> <script src="dist/bundle.js"></script> </body>


浏览器中查看index.html

3、CSS打包

1、安装style-loader和 css-loader Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用 loader 进行转换。 Loader 可以理解为是模块和资源的转换器。 首先我们需要安装相关Loader插件,css-loader 是将 css 装载到 javascript;style-loader 是让 javascript 认识css


npm install --save-dev style-loader css-loader


修改webpack.config.js


const path = require("path"); //Node.js内置模块 module.exports = { //..., output:{}, module: { rules: [ { test: /\.css$/, //打包规则应用到以css结尾的文件上 use: ['style-loader', 'css-loader'] } ] } }


在src文件夹创建style.css


body{ background:pink; }


修改main.js 在第一行引入style.css


require('./style.css');


浏览器中查看index.html 看看背景是不是变成粉色啦?

标签:npm,loader,webpack,css,使用,js,打包
From: https://blog.51cto.com/u_11334685/5740472

相关文章

  • npm使用
    一、简介1、什么是NPMNPM全称NodePackageManager,是Node.js包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是Node.js的包管理工具,相当于前端的Maven......
  • 使用IDEA 打包项目的问题
     关于打包的问题,网上也是有很多帖子,真的都很不好用,如果IDEA 的版本不一致,也是不能用。这个还是比较好用的方式的。##将程序打成jar包,并且可运行。 确保依赖没有问题,......
  • pyquery使用
    frompyqueryimportPyQueryaspqfromlxmlimportetreeimporturllib#d=pq("<html></html>")#d=pq(etree.fromstring("<html></html>"))#d=pq(url=your_url)#d=pq(......
  • linux环境变量配置错误后命令无法使用解决方案
    环境变量配置时多复制了一个空格,导致执行source/etc/profile后提示错误,无法编辑和查看文件解决方案: 查看当前系统变量:echo$PATH临时修改:exportPATH=/usr/local/sbi......
  • 开发人员使用Klocwork实现软件安全的5大原因
    Klocwork是为企业DevOps和DevSecOps而生的,因为Klocwork能够在保持高开发速度的同时,确保在安全和质量方面的持续合规,所以是企业首选的静态分析和SAST工具。在这里,我们将分享......
  • 分享一个查看分析Oracle表空间使用情况的脚本
    个人一直使用下面这个脚本查看、分析Oracle数据库表空间的使用情况,这个脚本经过我不断的调整、完善,已经接近完美了。已经很长时间没有改动过了,个人累积的脚本名为get_table......
  • spring boot项目使用mybatis-plus代码生成实例
    前言mybatis-plus官方地址https://baomidou.commybatis-plus是mybatis的增强,不对mybatis做任何改变,涵盖了代码生成,自定义ID生成器,快速实现CRUD,自动分页,逻辑删除等功能......
  • synchronized、ReentrantLock、LockSupport 的使用
    synchronized线程等待唤醒机制privatestaticfinalObjectobjLock=newObject();publicstaticvoidmain(String[]args){newThread(()->{......
  • 如何使用 Delphi/Lazarus 代码在 FastReport VCL 中生成二维码?
    FastReportVCL是用于在软件中集成商务智能的现代解决方案。它提供了可视化模板设计器,可以访问最受欢迎的数据源,报告引擎,预览,将过滤器导出为30多种格式,并可以部署到云,Web,电......
  • 使用回收站还原已删除的Active Directory对象
    在ActiveDirectory(AD)环境中,管理员不小心删除AD数据是很常见的。但是,影响取决于删除的对象类型。例如,如果您删除了单个用户的数据,则可能不会对组织产生重大影响。但是,如果您......