使用sass编译器将scss文件转换为css

使用sass编译器将scss文件转换为css,sass,compass-sass,Sass,Compass Sass,请参阅此代码笔的css部分: 它有一堆sass代码 我正在本地机器上运行。 我使用gem安装sass和compass 之后,我在终端上运行以下命令: sass --watch slider.scss:slider.css 现在,这是它报告的错误: error slider.scss (Line 156: Undefined operation: "1.27273em times 1cos(115.71429deg)".) 我不想复制和粘贴整个200行scss文件,因此我正在粘贴出现错误的部

请参阅此代码笔的css部分:

它有一堆sass代码

我正在本地机器上运行。 我使用gem安装sass和compass

之后,我在终端上运行以下命令:

sass --watch slider.scss:slider.css
现在,这是它报告的错误:

error slider.scss (Line 156: Undefined operation: "1.27273em times 1cos(115.71429deg)".)
我不想复制和粘贴整个200行scss文件,因此我正在粘贴出现错误的部分:

@for $i from 0 through $tip-cp-n {
  $ang-curr: $tip-bubble-ang-ref + $i*$tip-cp-ang-base;

  @if $ang-curr >= $tip-bubble-ang-s and $ang-curr <= $tip-bubble-ang-e {
    $x: $tip-bubble-rx*(1 + cos($ang-curr));   <-- line 156
    $y: $tip-bubble-ry*(1 + sin($ang-curr));
    $tip-cp: $tip-cp, $x $y !global;
  }
}
从0到$tip-cp-n的$i的
@{
$ang curr:$tip BUMBLE ang ref+$i*$tip cp ang base;

@如果$ang curr>=$tip-bubble-ang-s和$ang curr,您将不会像上面提到的那样使用
sass--watch
来监视和编译更改。在这种情况下,您会收到该错误,因为只有sass在为您进行编译,并且对Compass命令一无所知。对于Compass项目,您需要做一些事情。

确保项目目录是使用Compass命令创建的

指南针创建
,例如
指南针创建指南针测试

这将为Compass项目创建适当的框架,包括自动创建
/sass
目录和其中的
.scss
文件,以及定义编译文件的各种路径和输出的
config.rb
文件

切换到目录中,然后运行
compass watch
以查看更改

然后您应该在终端
中看到“Compass正在监视更改。按Ctrl-C停止。”
这表示它正在运行


您现在可以对
/sass
目录中的
.scss
文件进行更改。

如果您将Compass与sass一起使用,我认为您希望使用
Compass watch
而不是上面提到的
sass--watch
。可能的重复也可能是无的重复。使用Compass watch没有帮助是的,这是第一个问题的重复。您提供的代码不会产生您声称的错误。没有函数
1cos
,这正是编译器抱怨的。代码引用了一个
cos
函数。您需要提供再现错误的最小数量的代码(包括初始化变量)。参考:不是这样一个简单的过程。但是它工作起来了。感谢详细的步骤演示。你能声称这个问题不是一个答案为“使用指南针命令”的问题的重复,但你还是接受这个作为答案吗?