webpack模块分写导出与导入配置 -9

小编 2026-07-11 阅读:377 评论:0
1:确保自己的电脑已经安装了node和Git软件 2:自己在盘里随便创建一个文件夹一般为英文(也就是你自己的项目名称) 3:在新创建好的文件夹里面右键点击调出git指令窗口在窗口里面输入如下指令:     ...

1:确保自己的电脑已经安装了node和Git软件
2:自己在盘里随便创建一个文件夹一般为英文(也就是你自己的项目名称)
3:在新创建好的文件夹里面右键点击调出git指令窗口在窗口里面输入如下指令:
    1:npm install webpack -g            

    2:  npm install webpack-cli -g

    3: npm init -y

    4: npm install webpack --save-dev

   5  npm install html-webpack-plugin    (html编译插件)

   6:npm install clean-webpack-plugin

   6.1  npm install webpack-dev-server   (服务插件)

   6.2  npm install style-loader css-loader  (css打包插件)

   6.3 npm install file-loader url-loader    (文件图片打包插件)

   6.4 npm install less-loader    (less打包插件)

   6.5 npm install sass scss --save-dev       (sass scss打包插件)

   6.6 npm install sass-loader nade-sass      (sass打包插件)

   6.7 npm install purifycss-webpack purify-css (css优化插件)
  7:把项目拖进编辑器并创建webpack.rules.js和webpack.config.js

  webpack.rules.js比如是分写的打包模块 这就为导出模块webpack.config.js就为导入模块

 例如 webpack.rules.js代码如下:

const rules=[
            	{
			test:/\\.css$/,
			use:[\'style-loader\',\'css-loader\']               //css打包
		},
		
		{
			test:/\\.(png|jpg|gif)$/,                       //图片打包
			use:[
			{
			
				loader:\"url-loader\",
			options:{
				limit:1000
			}
			}
			
			]
		},
		{
			test:/\\.less$/,                             //less打包
			use:[
			\'style-loader\',\'css-loader\',\'less-loader\'
			]
		},
		
		{                                                      //sass scss打包
			test:/\\.(scss|sass)$/,	
			use:[
			
			\'style-loader\',\'css-loader\',\'sass-loader\'
			]
		}
	


]
module.exports=rules                   //模块导出

webpack-config.js代码如下:

const path=require(\"path\");
const WebpackHtmlPlugin  = require(\'html-webpack-plugin\');
const CleanwebpackPlugin=require(\'clean-webpack-plugin\');  //不用每一次去删除dist文件夹会自动删除
const Purify=require(\'purifycss-webpack\'); //css优化去重复无效代码
const glob=require(\'glob\');  //css优化
const rules=require(\'./webpack.rules.js\');  //导入分写的js模块
const test=require(\'./src/test.js\');     //自己新建写的js导入

module.exports={
	entry:{                                          //导入模块
		index:\'./src/index.js\',
		index2:\'./src/index2.js\'
	},
	output:{                                         //导出模块
		path:path.resolve(__dirname,\"dist\"),
		filename:\"[name].js\"
	},
	plugins:[
	        new WebpackHtmlPlugin({
	        	minify:{
	        		collapseWhitespace:true,      //清除空格
	        		removeAttributeQuotes:true,    //清除多余引号
	        		removeComments:true           //删除注释

	        	},
	        	

	        	title:\"tttttttt\",               //打包出来的文件夹名字
	        	template:\"./src/index.html\",      //要打包的html文件路径
	        	chunks:[\'index\'],
	        	hash:true,
	        	filename:\"index.html\"  ,//要打包的文件夹名字
	        	
	        }),
	        new WebpackHtmlPlugin({
	        	minify:{
	        		collapseWhitespace:true,      //清除空格
	        		removeAttributeQuotes:true,    //清除多余引号
	        		removeComments:true           //删除注释

	        	},
	        	

	        	title:\"ttttttt2\",
	        	template:\"./src/index2.html\",
	        	chunks:[\'index2\'],
	        		hash:true,
	        	filename:\"index2.html\"
	        	
	        }),
	        new CleanwebpackPlugin(),    //不用每一次去删除dist文件夹会自动删除
	        
	        new Purify({         //css优化去重去无效代码
	        	paths:glob.sync(path.join(__dirname,\"src/*.html\"))
	        })
	        
	        
	],
	devServer:{                                             //开启服务器模块
		contentBase:path.resolve(__dirname,\"dist\"),
		host:\"localhost\",
		port:8094,
		open:true
	}
	,
	
	
	
	module:{rules}            //导入分写js模块
}

10:package.json  scripts配置如下:

 \"scripts\": {
    \"build\": \"webpack --mode production\",
    \"dev\":\"webpack-dev-server --mode production\"
  },

11:要打包的html  title处需配置

<title><%=htmlWebpackPlugin.options.title%></title>

12:执行命令进行打包 npm run build  

13:开启本地服务npm run dev
 

版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
标签列表