Web包sass生成在linux上间歇性失败,仅模块生成失败:(@include someMixin()堆栈级别太深)

Web包sass生成在linux上间歇性失败,仅模块生成失败:(@include someMixin()堆栈级别太深),sass,webpack,sass-loader,Sass,Webpack,Sass Loader,sass加载程序版本:4.1.1 节点sass版本:4.1.1 网页:1.14 节点版本:7.3 我看到我使用sass loader构建的版本仅在linux上失败(在mac上可以),但并非每次都失败。我不完全确定这是sass问题还是sass加载程序问题。它似乎与网页配置有关,但我真的看不出有什么问题。我正在使用extract webpack文本插件,但是没有它也会发生同样的错误 这似乎与两个入口点引用同一组SAS有关 Child extract-text-webpack-plugin:

sass加载程序版本:4.1.1

节点sass版本:4.1.1

网页:1.14

节点版本:7.3

我看到我使用sass loader构建的版本仅在linux上失败(在mac上可以),但并非每次都失败。我不完全确定这是sass问题还是sass加载程序问题。它似乎与网页配置有关,但我真的看不出有什么问题。我正在使用extract webpack文本插件,但是没有它也会发生同样的错误

这似乎与两个入口点引用同一组SAS有关

Child extract-text-webpack-plugin:
    + 1 hidden modules

ERROR in ./~/css-loader!./~/postcss-loader!./~/sass-loader!./src/scss/alternate.scss
Module build failed: 
      @include media-query-phone() {
              ^
      Stack level too deep
      in /data/jenkins/workspace/build-branch/src/scss/elements/_grid.scss (line 88, column 16)
Child extract-text-webpack-plugin:
    + 1 hidden modules

ERROR in ./~/css-loader!./~/postcss-loader!./~/sass-loader!./src/scss/main.scss
Module build failed: 
      @include media-query-desktop() {
              ^
      Stack level too deep
      in /data/workspace/build-branch/src/scss/elements/_grid.scss (line 64, column 16)
在我的根级别,我有2个sass文件,main.scss和alternate.scss

//main.scss
@import 'folder1/**/*.scss';

//alternate.scss
@import 'folder2/thing';
@import 'main.scss';
文件夹1或2中的任何内容都没有任何导入

我的网页包配置入口点如下所示

entry: {
  //doesn't happen if either of these is left out
  'main': './src/main.js', //the js file imports main.scss
  'alternate-sass': './src/scss/alternate.scss'
},
@mixin media-query-phone() {
  @media screen and (min-width: $phone-min-width) and (max-width: $tablet-min-width - 1) {
    @content;
  }
}

//used by
@include media-query-phone() {
   .blah{
     padding: 0;
   }
}
导致错误的mixin如下所示

entry: {
  //doesn't happen if either of these is left out
  'main': './src/main.js', //the js file imports main.scss
  'alternate-sass': './src/scss/alternate.scss'
},
@mixin media-query-phone() {
  @media screen and (min-width: $phone-min-width) and (max-width: $tablet-min-width - 1) {
    @content;
  }
}

//used by
@include media-query-phone() {
   .blah{
     padding: 0;
   }
}

node sass 4.3修复了该问题。

我在OSX上看到了相同的问题。将节点sass更新到4.3.0似乎可以解决这个问题,尽管我还不知道为什么。我看到了同样的情况