webpack打包发布~

ops/2024/9/23 10:24:20/

1、安装webpack(局部安装webpack)。

npm i webpack webpack-cli -D

2、安装成功之后,你会在package.json文件中看到这个。

3、新建webpack.config.js文件,里面写配置编译模式,入口出口等(这里演示的是单入口打包)

// 导入node.js中专门操作路径的模块
const path = require('path');
module.exports={// 编译模式:开发阶段(production上线模式)mode:'development',// 入口// __dirname:表示项目所在目录的根路径。entry: path.resolve(__dirname, 'src/index.js'),    // 出口output: {        path: path.resolve(__dirname, 'dist'),// 输出文件名称     filename: 'bundle.js',  // publicPath:指定基础路径,开发环境一般是项目的根路径,上线之后一般是CDN的路径。      publicPath: './'    }
}

4、在package.js中配置打包命令。(不加 –mode development,默认打包是生产环境,打包出来的代码会默认压缩)

"build": "webpack --mode development",

5、打包成功。此时你的项目中会多出一个dist文件。里面是打包好的js文件。

6、最后需要了解webpack支持配置多入口及多出口文件。并且webpack默认只能打包处理.js结尾的模块。所以正对非.js文件,比如css,less等文件需要安装对应的loader并配置loader规则。

6.1打包处理css文件。

安装css的loader。

npm i style-loader css-loader -D

webpack.config.js文件中配置loader规则:

// 导入node.js中专门操作路径的模块
const path = require('path');
module.exports={// 编译模式:开发阶段(production上线模式)mode:'development',// 入口// __dirname:表示项目所在目录的根路径。entry: path.resolve(__dirname, 'src/index.js'),    // 出口output: {        path: path.resolve(__dirname, 'dist'),// 输出文件名称     filename: 'bundle.js',  // publicPath:指定基础路径,开发环境一般是项目的根路径,上线之后一般是CDN的路径。      publicPath: './'    },// 配置loader规则rules:[// 配置css文件的loader规则{test:/\.css$/,use:['style-loader','css-loader']},// 配置less文件的loader规则{test:/\.less$/,use:['style-loader','css-loader','less-loader']}]
}

7、针对高级js语言兼容低版本浏览器,需要安装babel。


http://www.ppmy.cn/ops/88747.html

相关文章

颠覆虚拟试衣行业标准!阿里发布OutfitAnyone:任意服装+任意人!

文章链接:https://arxiv.org/pdf/2407.16224 git链接:https://humanaigc.github.io/outfit-anyone/ huggingface: https://huggingface.co/spaces/HumanAIGC/OutfitAnyone 亮点直击 顶尖逼真度:OutfitAnyone 方法为虚拟试穿设立了新的行业标准&#xff0…

实战内测-某内测项目站点FUZZ到Sql注入

0x1 前言 下面给师傅们分享的案例呢是前段时间实战的一个站点,也是我朋友前段时间让我测的一个站点。整体的测试流程也还算ok,然后里面有些细节要是对师傅们有帮助可以收藏下,后面主要是利用FUZZ打了一个sql注入漏洞上去。 0x2 fuzz和sql结…

利用开源可视化报表工具进入流程化办公!

很多客户朋友都希望能实现流程化办公,因为只有这样才能帮助企业顺利降本、增效、提质,利用好企业内部数据资源,打破信息孤岛壁垒,实现高效发展。低代码技术平台、开源可视化报表工具优势功能特点多,是提质高效的办公利…

60个常见的 Linux 指令

常见60个Linux指令 1.ssh 登录到计算机主机2.ls 列出目录内容3.pwd 当前终端会话所在的完整路径4.cd 切换当前工作目录5.touch 创建空文件或更新文件的时间戳6.echo 终端输出文本或变量值7.nano 在终端中编辑文件8.vim 文本编辑器9.cat 查看、连接和创建文件10.shred 安全删除敏…

c++(模版)

目录 函数模板格式 函数模版原理 函数模板的实例化 模板参数的匹配原则 类模板 函数模板格式 template<typename T1, typename T2,......,typename Tn> 返回值类型 函数名(参数列表){} template<typename T> void Swap( T& left, T& right) { T te…

RabbitMQ的Windows版安装教程

文章目录 前言一、Windows安装RabbitMQ总结 前言 曾经写过一篇关于RabbitMQ的Ubuntu安装教程&#xff08;http://t.csdnimg.cn/5CYfC&#xff09;&#xff0c;当时使用的是Docker将RabbitMQ安装到虚拟机上&#xff0c;但是有很多小伙伴问Windows上如何进行安装RabbitMQ&#x…

mac清除dns缓存指令 mac清除缓存怎么清理

你是否曾经被要求清理dns缓存并刷新&#xff1f;清理dns缓存一般是由于修改了主机文件&#xff0c;或者想排除一些网络上的故障。在Mac上清除dns缓存需要使用命令行来实现。在本文中&#xff0c;软妹子将向大家介绍mac清除dns缓存指令&#xff0c;并展示mac清除缓存怎么清理。 …

基于SpringBoot+Vue的多媒体信息共享平台(带1w+文档)

基于SpringBootVue的多媒体信息共享平台(带1w文档) 基于SpringBootVue的多媒体信息共享平台(带1w文档) 随着武理多媒体信息共享平台的不断出现&#xff0c;用户需求不断增多&#xff0c;武理多媒体信息共享平台也不断的得到壮大。该系统主要是满足多方面的需求的实际需要&#…