gulp-sass缺少一些功能

时间:2017-02-28 10:04:48

标签: npm sass gulp gulp-sass

我开始与gulp和sass一起开展持续的开发工作。

该工作流程是针对那些在该项目中不可用的人设置的,并且一直在为团队中的人员工作。

Sass在其他人机器上编译,但在我的机器上编译。

我在我的机器上编译sass在几十个其他项目中没有问题,但没有问题。

我认为我确实正确地初始化了项目,但我怀疑存在一些版本或配置问题。

如果我npm install一切并运行gulp我收到以下错误:

Error: src/sass/utilities/mixins/_vendor-prefixes.scss
Error: Invalid CSS after "::-webkit-": expected "{", was "&-placeholder"
       "&-placeholder" may only be used at the beginning of a compound selector.
        on line 116 of src/sass/utilities/mixins/_vendor-prefixes.scss

我尝试评论有问题的行并再次运行gulp只是为了偶然发现另一个错误:

Error: src/sass/base/_base.scss
Error: "ul" failed to @extend "%reset-list".
       The selector "%reset-list" was not found.
       Use "@extend %reset-list !optional" if the extend should be able to fail.
        on line 142 of src/sass/base/_base.scss

等等:

Error: src/sass/utilities/_placeholders.scss
Error: You may not @extend an outer selector from within @media.
       You may only @extend selectors within the same directive.
       From "@extend %clearfix" on line 38 of src/sass/modules/_calendar.scss
        on line 9 of src/sass/utilities/_placeholders.scss

此代码适用于其他计算机,所有高级选择器都在开发中使用。

如果我针对特定错误进行谷歌搜索,我可以找到有关它们的错误,以及人们建议备用选择器,但我怀疑还有其他问题我应该修复。

我已将gulp更新为3.9.1gulp-sass更新为3.1.0,但我也遇到了相同的错误。

我该如何调试?

谢谢!

  

编辑:错误清楚地表明代码无效,但奇怪的是,相同的代码正在其他人机器上运行。

我会发布一些代码来解决一些错误,仅供参考:

_vendor-prefixes.scss:116

// Placeholder focus text
@mixin placeholder-focus($color: $input-color-placeholder) {

  &:focus::-webkit-&-placeholder { color:$color; }
  &:focus:-moz-placeholder { color:$color; } /* FF 4-18 */
  &:focus::-moz-placeholder { color:$color; } /* FF 19+ */
  &:focus:-ms-input-placeholder { color:$color; } 

}

_base.scss:142

// Unordered and Ordered lists
ul,
ol {
  @extend %reset-list;
}

以及_placeholders.scss上的include

// Reset List

%reset-list {
  padding:0;
  margin:0;

  li {
    list-style:none;
  }
}

1 个答案:

答案 0 :(得分:0)

这与功能或版本无关。

由于@rac指出代码 无效。

另一位开发人员正在以某种方式浏览错误,并且编译后的.css没有错误的行或者错误的扩展。

删除所有有缺陷的行会导致相同的.css和干净的编译。

谢谢!