我使用WinSCP下载和编辑.scss
文件并在Linux上(在服务器上)sass将它们编译为.css
。
保存文件后,我使用:sass scss/style.scss css/style.css
,它成功地用编译的sccs替换了css文件。
问题
为了自动化和节省时间,我想跳过编辑scss文件后返回命令行的部分。
但是,如果我使用watch
命令:sass --watch scss/style.scss:css/style.css
来同步这两个文件,则会弹出有关不存在的css错误的警报:
Change detected to: scss/style.scss
error scss/style.scss (Line 232: Invalid CSS after "...ht: bold; line-": expected "{", was "")
请注意当文件上传速度比平常更快时(有时会发生),watch命令可以正常工作,没有错误。
这是因为,当文件上传需要时间时,sass会在完全上传到远程文件夹之前编译scss文件(在服务器上)。因此,它只编译部分文件,导致css错误。
有没有办法为watch命令设置一个计时器,以便它在检测到更改后和编译之前等待几秒钟?
当然,任何其他方法都可以接受!!
答案 0 :(得分:2)
对于面临同样问题的十亿分之一(我知道你在那里),是时候回答我的风滚草了:
解决方案很简单
完全相反:
sass --watch scss/style.scss:css/style.css
那就是它。
如果您编辑并保存本地scss文件,sass会将其编译成css,然后WinSCP将检测css上的更改并自动将其上传到远程文件夹。