2. 配置css样式文件打包、postcss_配置postcss_山川pro的博客-程序员秘密

技术标签: css  webpack  postcss  

  1. 安装postcss、postcss-loader、postcss-preset-env、cross-env、mini-css-extract-plugin
  • npm i postcss postcss-loader postcss-preset-env cross-env mini-css-extract-plugin -D
  • cross-env: 用来设置环境变量
  • mini-css-extract-plugin:将打包后的文件中的css,分离出来
  1. 安装css-loader、sass-loader style-loader
  • npm i style-loader css-loader sass-loader -D
  1. 在根目录下新建postcss.config.js配置文件
    module.exports = {
        plugins: [
            require('postcss-preset-env')
        ]
    }
  1. webpack-prod-config.js中配置
const isDevMode = process.env.NODE_ENV !== 'production'

const webpackConfigBase = {
    mode: 'production',
    module: { 
        rules: [
            {
                test: /\.((c|sa|sc)ss)$/i,
                use: [
                    /* 1、执行顺序:从下到上(从右到左)
                       2、loader作用:
                        - css-loader: 将css文件编译成commonjs模块加载js中,里面内容是样式字符串
                        - style-loader:将js中的css,通过创建style标签添加html文件中
                    */
                    {
                        loader: isDevMode ? 'style-loader' : MiniCssExtractPlugin.loader,
                    },
                    {
                        loader: 'css-loader',  

                    },
                    'postcss-loader',
                    'sass-loader'
                ],
            },
        ]
    },
    plugins: [
        new MiniCssExtractPlugin({
            filename: isDevMode ? 'static/css/style.css' : 'static/css/style.[contenthash].css',
            chunkFilename: isDevMode ? 'static/css/style.[id].css' : 'static/css/style.[contenthash].[id].css'
        }),
    ]
}
  1. package.json中配置
{
    "scripts": {
        "build": "cross-env NODE_ENV=production webpack --config webpack-prod-config.js"
    },
    "browserslist": {
        "development": [
            "last 1 chrome version",
            "last 1 firefox version",
            "last 1 safari version"
        ],
        "production": [
            ">0.2%",
            "not dead",
            "not op_mini all"
        ]
    },
}
  1. 执行命令: npm run build
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/RRRRRDong/article/details/125287910

智能推荐

ESP32 windows10+msys32+eclipse编译环境COM串口通信设置_original message: windowserror(31, '\xc1\xac\xb5\x_31253的博客-程序员秘密

1. 串口通信问题===========================================================================================================================================================================================...

Windows内核安全与驱动开发_weixin_33713503的博客-程序员秘密

这篇是计算机中Windows Mobile/Symbian类的优质预售推荐《Windows内核安全与驱动开发》。编辑推荐本书适合计算机安全软件从业人员、计算机相关专业院校学生以及有一定C语言和操作系统基础知识的编程爱好者阅读。内容简单介绍本书的前身是《天书夜读——从汇编语言到Windows内核编程》和《寒江独钓——Windows内核安全编程》。与Wi...

Android记事本程序源码_android记事本源码_duchunchao的博客-程序员秘密

1、MainActivitypackage cn.dccssq;import android.app.ListActivity;import android.content.Intent;import android.database.Cursor;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.view.MenuItem;import and

WGS84经纬度坐标与BJ54坐标之间的转换(Arcgis)(转)_三叔二少爷的博客-程序员秘密

张兢1 王文瑞2 陈溪1(1.广西第一测绘院广西南宁 530023;   2.南宁市勘测院 广西南宁 530022)【摘 要】 本文针对从事测绘工作者普遍遇到的坐标转换问题,简要介绍ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标转换原理和步骤。【关键词】 ArcGIS 坐标转换投影变换  1 坐标转换简介坐标系统之间的坐标转换既包括:      不同的参心坐

如何解决跨域问题,来看看阿里P7架构师是怎么解决的,你有遇到吗?_Java_supermanNO1的博客-程序员秘密

现在越来越多的项目就算是一个管理后端也偏向于使用前后端分离的部署方式去做,为了顺应时代的潮流,一前后端分离就产生了跨域问题,所以许多同学把跨域和前后端分离项目联系在了一起,其实跨域产生的原因并不是前后端分离导致的,那我们一起来看一下,希望可以靠这一篇文章解答大家所有的跨域问题一、跨域产生的条件使用xmlHttpRequest,即我们通常说的ajax请求浏览器做了这个事访问的域名不同,即访...

随便推点

24 张图总结 TCP 基础知识,看完我飘了。_tcp right_程序员cxuan的博客-程序员秘密

TCP 是一种面向连接的单播协议,在 TCP 中,并不存在多播、广播的这种行为,因为 TCP 报文段中能明确发送方和接受方的 IP 地址。在发送数据前,相互通信的双方(即发送方和接受方)需要建立一条连接,在发送数据后,通信双方需要断开连接,这就是 TCP 连接的建立和终止。TCP 连接的建立和终止如果你看过我之前写的关于网络层的一篇文章,你应该知道 TCP 的基本元素有四个:即发送方的 IP 地址、发送方的端口号、接收方的 IP 地址、接收方的端口号。而每一方的 IP + 端口号都可以看作是一个套接.

机器学习算法工程师笔试及面试总结_top_geek_001的博客-程序员秘密

一、机器学习算法工程师笔试题机器学习笔试题目—-网易2016春招BAT机器学习面试1000题系列机器学习-算法工程师 -面试/笔试准备-重要知识点梳理总结一点面试问题--算法工程师(机器学习)2018 年大疆机器学习算法工程师春季提前批笔试题网易机器学习算法工程师笔试编程题二、机器学习算法工程师面试题关于”算法工程师/机器学习工程师”的笔试和面试总结...

python函数和方法概念_python函数的基本概念_weixin_39789370的博客-程序员秘密

关于函数的一些基本概念2015年8月9日17:49函数属性:可以给函数添加任意属性Def foo()foo.secure=1foo.private=1函数的作用域:在函数内部如何访问全局变量?只想读取变量的值(也就是不想重绑变量)print(参数+external)引用全局变量问题:若局部变量或者参数的名字和想要访问的全局变量名相同的话,就不能直接访问了,全局变量会被局部变量所屏蔽。若需要,可使用...

STL中next_permutation()和prev_permutation()函数实现_油油灰的博客-程序员秘密

next_permutation()和permutation()是STL提供的用来计算下一个排列和上一个排列的算法;刷题中经常用到,比较有用。next_permutation()实现:template <class iterator>bool next_permutation(iterator first,iterator last){ if(first==last)r...

HANA导入CSV文件乱码_康康125的博客-程序员秘密

Hana数据库导入CSV格式的文件乱码问题,用如下方式解决:  1、用记事本打开csv 另存为,代码选择 utf-8

推荐文章

热门文章

相关标签