Webpack 4.编译scss分离css文件

2024-04-15

我试图将 scss 编译成一个单独的 css 文件,但没有成功。现在,css 与所有 js 代码一起进入到bundle.js 中。 我怎样才能将我的CSS分离到它自己的文件中?

这是我的配置的样子:

var path = require("path");

module.exports = {
    entry: "./js/main.js",
    output: {
        path: path.resolve(__dirname, "dist"),
        filename: "bundle.js",
        publicPath: "/dist"
    },
    watch:true,
    module: {
        rules: [
            {
                test: /\.js$/,
                use: {
                    loader: "babel-loader",
                    options: { presets: ["es2015"] }
                }
            },
            {
                test: /\.scss$/,
                use: [
                    {
                        loader: "style-loader"
                    },
                    {
                        loader: "css-loader"
                    },
                    {
                        loader: "sass-loader"
                    }
                ]
            }
        ]
    }
};

其他答案让我很头痛,因为它们不起作用。我做了很多谷歌搜索,我意识到你可以编译scss分成单独的css文件而不使用任何额外的插件

webpack.config.js

    const path = require('path');

    module.exports = {
        entry: [
            __dirname + '/src/js/app.js',
            __dirname + '/src/scss/app.scss'
        ],
        output: {
            path: path.resolve(__dirname, 'dist'), 
            filename: 'js/app.min.js',
        },
        module: {
            rules: [
                {
                    test: /\.js$/,
                    exclude: /node_modules/,
                    use: [],
                }, {
                    test: /\.scss$/,
                    exclude: /node_modules/,
                    use: [
                        {
                            loader: 'file-loader',
                            options: { outputPath: 'css/', name: '[name].min.css'}
                        },
                        'sass-loader'
                    ]
                }
            ]
        }
    };

包.json

    {
      "name": "...",
      "version": "1.0.0",
      "description": "...",
      "private": true,
      "dependencies": {},
      "devDependencies": {
        "file-loader": "^5.0.2",
        "node-sass": "^4.13.1",
        "sass-loader": "^8.0.2",
        "webpack": "^4.41.5",
        "webpack-cli": "^3.3.10"
      },
      "scripts": {
        "build": "webpack --config webpack.config.js --mode='production'"
      },
      "keywords": [],
      "author": "...",
      "license": "ISC"
    }

依赖项:

npm install --save-dev webpack webpack-cli file-loader node-sass sass-loader

如何运行JS和SCSS编译

npm run build
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Webpack 4.编译scss分离css文件 的相关文章

随机推荐

  • 获取所有输入值 - Vuejs

    我有多个input简单 VueJs 应用程序中的元素 但我没有 和 表单元素 现在我想一次获取所有输入值并发送到服务器端 laravel 进行处理 div div
  • 如何拦截所有节点request-promise http请求来修改请求选项?

    我想创建一个global请求拦截器request promise基于请求 以便我可以添加x request id所有传出请求的标头 由于该行为在所有传出请求中都很常见 因此我不想在发出请求的任何地方添加此功能 我在库文档中没有注意到此类功能
  • 引用本地计算机上的 javascript 文件

    我知道可以像这样引用网络上的第三方 JavaScript 文件 是否可以通过执行类似的操作来引用本地计算机上的 javaScript 文件 我怀疑这可能是一个禁忌 因为它可能是网站找出客户端计算机上有哪些文件的一种方式 我想这样做的原因是因
  • python 对象可以有嵌套属性吗?

    我有一个定义如下的对象 class a property def prop self print hello from object prop property def prop1 self print Hello from object
  • .gitlab-ci.yml 中的规则条件是否有 AND 选项?

    我想创建一些嵌套条件 当它是合并或合并请求并且以特定名称启动 功能 时 我需要此管道才能工作 那么 作业的 唯一 选项中是否有 AND 条件 不 那里没有 你必须使用rules https docs gitlab com ee ci yam
  • 如何创建开始菜单快捷方式

    我正在构建一个自定义安装程序 如何在开始菜单中创建可执行文件的快捷方式 这是我到目前为止所想出的 string pathToExe C Program Files x86 TestApp TestApp exe string commonS
  • mysql 使用addslashes() [重复]

    这个问题在这里已经有答案了 可能的重复 mysql real escape string 能做什么 而addslashes 不能 https stackoverflow com questions 534742 what does mysq
  • 如何在 iOS 应用程序中使用 Berkeley DB?

    我想在 iOS 应用程序中使用 Berkeley DB 但我不知道如何去做 如何将 Berkeley DB 集成到 iOS 项目中 你如何通过 Objective C 与它通信 是否有任何教程或示例可以演示如何做到这一点 首先要注意的是 该
  • 是否可以在不使用 boto3 下载 S3 文件的情况下获取其内容?

    我正在研究一个从 a 中转储文件的过程Redshift数据库 并且不希望必须在本地下载文件来处理数据 我看到了Java has a StreamingObject类可以做我想要的事情 但我还没有看到类似的东西boto3 如果你有一个mybu
  • 模块“pandas”没有属性“rolling_mean”

    我正在尝试构建 ARIMA 用于异常检测 我需要找到时间序列图的移动平均值 我尝试为此使用 pandas 0 23 import pandas as pd import numpy as np from statsmodels tsa st
  • 地理编码器错误 java.io.IOException:无法解析来自服务器的响应

    Code Geocoder geocoder new Geocoder map this Locale getDefault List
  • 为什么sonar:sonar需要先安装mvn?

    官方文档http docs sonarqube org display SONAR Analyzing with Maven http docs sonarqube org display SONAR Analyzing with Mave
  • iOS:通过自定义 UITableViewCell 上的 UITextView 选择

    我有一个带有图像和 UITextView 属性的自定义 UITableViewCell 文本视图跨越到单元格的边缘 我的问题是点击文本视图未在 didSelectRowAtIndexPath 中注册 我怎样才能让我可以 点击 我的文本视图
  • Login-AzureRmAccount 命令无法从托管 C# 应用程序运行

    我正在使用 powershell 脚本登录到 azure 为此我编写了简单的命令 Login AzureRmAccount 并在单击按钮时将该脚本调用到 C 代码中 它在本地工作正常 但是当我在服务器上托管此页面时 身份验证弹出窗口未打开
  • 如何在 PHP 中打印今天的尼泊尔日期? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想以不同的日期格式回显打印尼泊尔日历日期 请看一下下面的代码 有一个 jquery 日期选择器 http sajanmaharjan c
  • 是否可以预加载和缓存视频文件而不将它们添加到 DOM?

    我正在开发一款游戏 根据得到的结果触发 30 个小视频文件中的一个 由于视频需要在用户交互后立即播放 因此理想情况下我希望预加载视频并准备好播放 我添加了 PreloadJS 对我需要的所有资源进行了排队 查看检查器中的 网络 选项卡 我可
  • ed25519.公开结果不同

    使用包https github com golang crypto tree master ed25519 https github com golang crypto tree master ed25519我正在尝试获取给定私钥的公钥 这
  • 将变量传递到 xp_cmdshell

    我在 SQL Server 中有一个存储过程 用于检查今天的备份文件 文件名中包含日期的文件 检查完毕后 将继续进行robocopy这些文件到另一个文件夹 挑战 在此文件夹中 可能存在昨天或其他日期的文件 但只需要今天的bak文件来传输 d
  • 错误域=NSOSStatusErrorDomain 代码=-12780 \"(null)\"

    当我尝试使用 AVAssetExport 导出资产时 仅在通过 Whatsapp 接收的视频上可能会出现以下错误 我找不到可行的解决方案 我还尝试实现代码来修复视频持续时间 但我没有修复它 错误是 错误域 NSOSStatusErrorDo
  • Webpack 4.编译scss分离css文件

    我试图将 scss 编译成一个单独的 css 文件 但没有成功 现在 css 与所有 js 代码一起进入到bundle js 中 我怎样才能将我的CSS分离到它自己的文件中 这是我的配置的样子 var path require path m