【问题标题】:Cannot get my head around this web-pack path error无法理解这个 web-pack 路径错误
【发布时间】:2016-09-04 02:27:01
【问题描述】:

我的项目结构如下:

我有以下 webpack 配置文件:

module.exports = {
    context: __dirname + "/resources",
    entry: "./js/entry.js",
    output: {
        path: __dirname + "/public",
        filename: "bundle.js"
    },
    module: {
        loaders: [
            {
                test: /\.scss$/,
                loaders: ["style", "css", "sass"]
            }
        ]
    }
};

然后用

打开我的 entry.js 文件
require('./style.scss');

我知道这种特定的安排可能不起作用,但我已经尝试了一个多小时的不同排列、设置和配置,但似乎无法让 webpack 找到我的 .scss 文件。

谁能告诉我在我的情况下应该如何设置 webpack 配置文件?

干杯。

编辑,

尝试在我的需求中提升两个级别,

require('../../scss/style.scss')

还是给我,

同样适用于

require('../scss/style.scss');

【问题讨论】:

    标签: module path webpack sass-loader


    【解决方案1】:

    问题出在require语句中

    require('./style.scss');
    

    它将在 resources/js 目录中搜索您的样式文件,并参考您的 entry.js 文件尝试使用以下方式要求您的样式:

    require('../scss/style.scss');
    

    尝试使用path模块解析上下文路径:

    var path = require('path');
    ...
    context: path.resolve("resources"),
    ...
    

    如果问题解决了,请告诉我。

    【讨论】:

    • 不,仍然给我,无法解决“/var/www/resources”中的“样式”,我觉得我错过了一些非常基本的东西
    • 我觉得解析你的上下文路径有问题。尝试使用 path 模块来解析您的路径。我会更新我的答案,让我知道你得到了什么
    【解决方案2】:

    好吧,我觉得自己像个彻头彻尾的白痴,在多次重命名文件和文件夹并尝试了我的 require 语句的不同排列之后,我注意到错误似乎一直在声明

    Can't resolve 'style' in ...
    

    结果我没有将 style-loader 和 css-loader 安装到我的项目中,尽管它们与 sass-loader 捆绑在一起。 (实际上在 npm 页面上已注明),正在运行

    npm install css-loader style-loader -D 
    

    在我的项目目录中解决了这个问题。

    不过,感谢您的建议,我希望这对将来的人有所帮助。

    【讨论】:

      猜你喜欢
      • 2012-12-09
      • 1970-01-01
      • 2019-09-20
      • 1970-01-01
      • 2015-12-16
      • 1970-01-01
      • 1970-01-01
      • 2021-03-04
      • 2021-10-06
      相关资源
      最近更新 更多