全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解webpack分离css单独打包

这篇文章只写了如何把CSS打包成一个CSS文件,没有讲解如何打包成多个CSS文件,经简友提点,这里添加上了 打包成多个CSS文件的方法。

瞎扯

webpack 把所有的资源都当成了一个模块, CSS,Image, JS 字体文件 都是资源, 都可以打包到一个 bundle.js 文件中.

但是有时候需要把样式 单独的打包成一个文件, 然后放到 CND上, 然后缓存到浏览器客户端中

一、extract-text-webpack-plugin 使用方法

这个操作很简单的,只需要一个插件就好了,就是extract-text-webpack-plugin

1. 安装extract-text-webpack-plugin

npm install extract-text-webpack-plugin --save-dev

2. 配置文件添加对应配置

首先require一下

var ExtractTextPlugin = require("extract-text-webpack-plugin");

plugins里面添加

new ExtractTextPlugin("styles.css"),

实例:

plugins: [
  new webpack.optimize.CommonsChunkPlugin('common.js'),
  new ExtractTextPlugin("styles.css"), 
],

modules里面对css的处理修改为

{
 test: /\.css$/,
  loader: ExtractTextPlugin.extract("style-loader","css-loader")
},

千万不要重复了,不然会不起作用的

我这里如下:

module: {
  loaders: [
   {
   test: /\.css$/,
    loader: ExtractTextPlugin.extract("style-loader","css-loader")
  },
   {
   test: /\.scss$/,
    loader: "style!css!sass"
  },
   {
   test: /\.less$/,
    loader: "style!css!less"
  },
 ]
},

3. 在引入文件里面添加需要的css,【举例如下】

require('../less/app.less');
require('./bower_components/bootstrap-select/dist/css/bootstrap-select.min.css');
require('./bower_components/fancybox/source/jquery.fancybox.css');

二、如何把CSS打包成一个文件, 和 把CSS打包成多个文件

打包一个文件,只需要常规的在入口的js文件引用 css文件即可, 打包成多个CSS文件,可以设置多个CSS入口,让webpack用 loader去打包。 和分割单独打包js文件一样。下面有两个例子。

// 使用webpack 打包单独的postcss语法的css文件
/* webpack.config.js */
var precss = require('precss');
var cssnext = require('cssnext');
var autoprefixer = require('autoprefixer');
var cssnano = require('cssnano');
var Ex = require('extract-text-webpack-plugin');
module.exports = {
 entry: './【path】/index.js',
 /* index.js 里 require('./【name】.css');就好 我在看看文档是不是直接不用引入js文件 */
 output: {
  filename: 'index.js'
 },
 module: {
  loaders: [{
  test: /\.css$/,
  loader: Ex.extract('style-loader', 'css-loader!postcss-loader') /*这里的写法注意下 */
  }]
 },
 postcss: function() {
  return [autoprefixer, cssnext, precss, cssnano]
 },
 plugins: [
  new Ex("【name】.css")
 ]
 }

 // 使用webpack 打包单独的多个postcss语法的css文件
var precss = require('precss');
var cssnext = require('cssnext');
var autoprefixer = require('autoprefixer');
var cssnano = require('cssnano');
var Ex = require('extract-text-webpack-plugin');
var webpack = require('webpack');


module.exports = {
 entry: {
 ac1: './src/actother.css',
 ac2: './src/index.css'
 },
 output: {
 filename: "[name].css"
 },
 module: {
 loaders: [{
  test: /\.css$/,
  loader: Ex.extract('style-loader', 'css-loader!postcss-loader')
 }]
 },
 postcss: function() {
 return [autoprefixer, precss, cssnano, cssnext]
 },
 plugins: [
 new Ex('[name].css')
 ]
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# webpack  # css  # 独立打包  # 分离css  # webpack2分离css  # webpack打包js的方法  # webpack独立打包和缓存处理详解  # 浅谈webpack打包之后的文件过大的解决方法  # Webpack打包详细流程及代码  # 多个  # 只需要  # 都是  # 我在  # 成了  # 上了  # 就好  # 提点  # 很简单  # 写了  # 千万不要  # 这篇文章  # 配置文件  # 大家多多  # 客户端  # 不起作用  # 就好了  # 文档  # 有两个  # output 


相关文章: 怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何快速上传自定义模板至建站之星?  如何在建站宝盒中设置产品搜索功能?  如何通过FTP空间快速搭建安全高效网站?  如何用西部建站助手快速创建专业网站?  制作企业网站建设方案,怎样建设一个公司网站?  南平网站制作公司,2025年南平市事业单位报名时间?  如何有效防御Web建站篡改攻击?  如何用AWS免费套餐快速搭建高效网站?  高端企业智能建站程序:SEO优化与响应式模板定制开发  实惠建站价格推荐:2025年高性价比自助建站套餐解析  制作网站的公司有哪些,做一个公司网站要多少钱?  建站主机是否属于云主机类型?  购物网站制作公司有哪些,哪个购物网站比较好?  高防服务器租用首荐平台,企业级优惠套餐快速部署  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  如何在阿里云通过域名搭建网站?  宝塔新建站点为何无法访问?如何排查?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  装修招标网站设计制作流程,装修招标流程?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  教学网站制作软件,学习*后期制作的网站有哪些?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何获取PHP WAP自助建站系统源码?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  香港网站服务器数量如何影响SEO优化效果?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  如何用虚拟主机快速搭建网站?详细步骤解析  如何在腾讯云服务器快速搭建个人网站?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  制作网站的基本流程,设计网站的软件是什么?  如何登录建站主机?访问步骤全解析  历史网站制作软件,华为如何找回被删除的网站?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  如何用美橙互联一键搭建多站合一网站?  如何正确选择百度移动适配建站域名?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何撰写建站申请书?关键要点有哪些?  非常酷的网站设计制作软件,酷培ai教育官方网站?  建站之星上传入口如何快速找到?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  建站上传速度慢?如何优化加速网站加载效率? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。