Webpack、less-loader - 意外标记 - 为什么?

2024-01-10

我正在使用 Webpack(在 Windows 环境中)并且我正在尝试使用less-loader and extract-text-webpack-plugin生成一个css文件。我有less, webpack-core and webpack也在我的node_modules folder.

在我的应用程序中我使用:

require('./index.less');

我的网络包配置:

const path = require('path');
const ExtractTextPlugin = require("extract-text-webpack-plugin");

module.exports = {
    entry: [
        './app/index.jsx'
    ],
    output: {
        path: path.join(__dirname, '/public'),
        filename: "js/app.js"
    },
    module: {
        loaders: [{
            test: /\.(js|jsx)$/,
            include: path.join(__dirname, '/app'),
            exclude: path.join(__dirname, '/node_modules'),
            loader: 'babel-loader',
            query: {
                presets: ['es2015', 'react'],
                plugins: ["transform-object-rest-spread"]
            }
        },{
            test: /\.(css|less)$/,
            loader: ExtractTextPlugin.extract("css-loader", "less-loader")
        }]
    },
    plugins: [
        new ExtractTextPlugin('css/app.css')
    ]
};

根据我的理解,这应该意味着当 Webpack 遇到我的index.less文件,它使用less-loader首先生成CSS,然后css-loader将内容放入导出文件中(css/app.css在这种情况下)。

这是我收到的错误:

./app/index.less 中出现错误

模块构建失败:ModuleParseError:模块解析失败:c:\node\react2\node_modules\less-loader\index.js!c:\node\react2\app\index.less 第 1 行:意外的标记 {

您可能需要适当的加载程序来处理此文件类型。

|身体{|颜色:#333; |背景颜色:#f5f5f5; 在 DependencyBlock 处。 (c:\node\react2\node_modules\webpack\lib\NormalModule.js:113:20) 在 DependencyBlock.onModuleBuild (c:\node\react2\node_modules\webpack-core\lib\NormalModuleMixin.js:310:10) 在 nextLoader (c:\node\react2\node_modules\webpack-core\lib\NormalModuleMixin.js:275:25) 在 c:\node\react2\node_modules\webpack-core\lib\NormalModuleMixin.js:292:15 在 context.callback (c:\node\react2\node_modules\webpack-core\lib\NormalModuleMixin.js:148:14) 在 c:\node\react2\node_modules\less-loader\index.js:70:3 在 c:\node\react2\node_modules\less\lib\less\render.js:35:17 在 c:\node\react2\node_modules\less\lib\less\parse.js:63:17 在 Object.finish [as _finish] (c:\node\react2\node_modules\less\lib\less\parser\parser.js:183:28) 在 Object.ImportVisitor._onSequencerEmpty (c:\node\react2\node_modules\less\lib\less\visitors\import-visitor.js:35:14) 在 ImportSequencer.tryRun (c:\node\react2\node_modules\less\lib\less\visitors\import-sequencer.js:50:14) 在 Object.ImportVisitor.run (c:\node\react2\node_modules\less\lib\less\visitors\import-visitor.js:29:25) 在 Object.Parser.parse (c:\node\react2\node_modules\less\lib\less\parser\parser.js:189:22) 在 Object.parse (c:\node\react2\node_modules\less\lib\less\parse.js:61:18) 在 Object.render (c:\node\react2\node_modules\less\lib\less\render.js:25:18) 在 Object.module.exports (c:\node\react2\node_modules\less-loader\index.js:62:7)

So the less-loader第 1 行有问题。我的 LESS 代码非常简单:

body {
    color: #333;
    background-color: #f5f5f5;
    margin: 0;
    padding: 2% 5%;
    text-align: center;
    font-family: arial;
    font-size: 1em;
    p {
        margin: 0 0 1em 0;
        padding: 0;
    }
}

怎样才能less-loader有问题body {}..?

UPDATE: 如果我加上style-loader像这样:ExtractTextPlugin.extract("style-loader", "css-loader", "less-loader"),错误消失,但生成的 CSS 文件包含 LESS - 如 - 嵌套仍然存在:body { p {} }代替body {} body p {}.


我正在查看此页面:https://webpack.github.io/docs/stylesheets.html https://webpack.github.io/docs/stylesheets.html在优秀的 Webpack 文档中:-)。

表明:ExtractTextPlugin.extract("style-loader", "css-loader!less-loader").

我尝试过这个并且有效!我在输出文件中得到纯 CSS。

我没有使用ExtractTextPlugin.extract()正确。这extract-text-webpack-plugin docs https://github.com/webpack/extract-text-webpack-plugin表明第一个参数是可选的(未提取 css 时应使用的加载程序),第二个参数是加载程序字符串(应用于将资源转换为 css 导出的加载程序)模块)。

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

Webpack、less-loader - 意外标记 - 为什么? 的相关文章

随机推荐

  • java SAXParser 忽略异常并继续解析

    我有一个 java 类 它解析 xml 文件 并将其内容写入 MySQL 一切正常 但问题是当 xml 文件包含无效的 unicode 字符时 会引发异常并且程序停止解析文件 我的提供商每天发送这个 xml 文件 其中包含产品列表及其价格
  • Java String.valueOf(jsonArray) 将 jsonArray 中的 UTF-8 编码内容变成问号

    我有这个 json 数组 JSONArray 类型 其中包含 utf 8 编码的字符串 success true data moduleTitle title status 200 然后我想获取它的字符串值 String s String
  • 无法让 GoogleMap OnMarkerClickListener 工作

    使用 V2 地图 一切基本正常 包括添加标记 但是 我需要在点击标记时采取行动 因此我安装了一个处理程序 thisMap setOnMarkerClickListener new GoogleMap OnMarkerClickListene
  • 如何为 Blogger 添加国际化支持?

    如何为 Blogger 添加国际化支持 是否可以在一个博客中处理多种语言 是否可以添加自己的翻译而不使用谷歌翻译小部件 http translate google com translate tools Thanks 这些应该设置在博客的
  • 如何从元组列表中删除项目? [复制]

    这个问题在这里已经有答案了 我想使用索引列表从元组列表中删除项目 mytupList 1 2 2 3 5 6 8 9 indxList 1 3 我尝试过像这样使用 numpy newtupList numpy delete mytupLis
  • Excel VBA 类似运算符 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 Excel VBA 搜索另一个字符串中的子字符串 如下所示 Dim pos As Integer pos InStr I am
  • RestAssuredMockMvc 连接到 http://localhost:8080 被拒绝

    我使用 REST 方法开发了一个 Spring MVC Web 应用程序 我很想使用 RestAssured 创建 JUnit 测试类 从文档来看 它看起来非常简单 但我遇到了一些问题 基本上我想用它来避免运行时 Tomcat 实例 但问题
  • 如何测试当前是否正在播放声音?

    我一直在努力掩盖
  • 如何使用 ionic 框架在 IOS 上获取 IMEI

    如何使用 ionic 框架在 IOS 上获取 IMEI 您可以使用 设备 对象Cordova http cordova apache org docs en 2 5 0 cordova device device md html 设备对象描
  • 编译器和负数表示

    最近我很困惑这个问题 https stackoverflow com questions 700410 subtraction without minus sign 700487 700487 也许是因为我没有阅读语言规范 我知道这是我的错
  • 对于不同的经过身份验证的用户,同一资源的不同 REST 表示

    我有一个简单的资源 如下所示 api 配置 参展商 id 这通常是一个公共 API 具体取决于 URL 配置部分的设置 它可能会将此返回给未经身份验证的用户 a some value b other value 但是 如果管理员已登录并想要
  • jQuery 整个 HTML 页面使用微调器加载

    我正在尝试做一些简单的事情 制作一个 jQuery 脚本 它将等待显示整个页面 包括所有 DIV 文本和图像 当页面加载时 我不想显示页面的一部分 而是显示旋转的 GIF 图像 当整个页面加载时 我们可以在浏览器窗口中淡入淡出页面内容 有很
  • “Key”是 SQL Server 中的保留关键字吗?

    今天我正在运行一个查询 我想获取其中包含 sc ticket 名称的密钥 表中的列 所以我尝试运行这个查询 SELECT TOP 1000 ID Key Value FROM Core dbo Properties where key li
  • 为什么我在启动 iPhone OS 应用程序时收到“安全策略错误”?

    我前段时间创建了一个 iPhone OS 2 2 应用程序 最近安装了 3 1 SDK 当我尝试在 3 1 iPod Touch 上运行应用程序时 启动窗口显示 调试器错误 启动远程程序时出错 安全策略错误 查看 iPod Touch 控制
  • 防止骨干僵尸视图

    注意 我们使用的是主干1 0 0 我对 Backbone 比较陌生 并且打算查看前同事编写的一些代码 我不想盲目地复制粘贴东西 而是想了解他是如何做事的 从那时起我开始想知道处理僵尸视图的最佳方法 var view new editItem
  • 转置并展平二维索引数组,其中行的长度可能不相等

    我想采用这样的数组并将其组合成 1 个数组 array size 2 0 gt array size 10 0 gt string 1 1 gt string a 2 gt string 3 3 gt string c 1 gt array
  • 将django中模型表单的媒体类处理为模板

    我有一个看起来像这样的表格 class MarketingActionForm forms ModelForm contact ManyToManyByLetter Contact field name first name contact
  • Docusign XML 检查为复选框

    我正在尝试填充模板上的复选框 文档位于https www docusign com p APIGuide Content Sending 20Group Tab htm https www docusign com p APIGuide C
  • 十六进制数有负数吗?

    十六进制数有负数吗 如果是的话怎么办 对于二进制你会有signed and unsigned 如何用十六进制表示它们 我需要这个来进行我即将开始的十六进制例程 是的 例如 您将拥有以下带符号的 32 位二进制和十六进制表示形式 Decima
  • Webpack、less-loader - 意外标记 - 为什么?

    我正在使用 Webpack 在 Windows 环境中 并且我正在尝试使用less loader and extract text webpack plugin生成一个css文件 我有less webpack core and webpac