【发布时间】:2019-10-30 09:11:39
【问题描述】:
我使用lessc 2.7.3。我通过 makefile 生成 css 文件并使用以下路径
- makefile 在
themes/bodensee - css 在
themes/bodensee/css中生成 -
themes/bodensee/less中的文件较少 - 地图与 css 文件位于同一文件夹中。
我的问题是 css 文件错过了 themes/bodensee 路径,所以它会引发一个在 css.map 文件中找不到的文件。
lessc -s less/wlb.less --clean-css="--s0 --advanced" --source-map-rootpath=themes/bodensee/ --source-map="css/wlb.css.map" css/wlb.css
CSS 文件现在包含 `sourceMappingURL=css/wlb.css.map``根路径没有任何作用。
我还尝试了一个幻想根路径并在文件中搜索它 - 它没有出现在任何地方。但选项是正确的。当我尝试拼错选项时,LESS 会抛出一个错误。
我错过了什么?
here 中的 --source-map-rootpath 选项的说明
指定一个根路径,该根路径应添加到源映射中的每个较少文件路径以及输出 css 中指定的映射文件的路径。
因为basepath默认是输入less文件的目录,所以rootpath默认是sourcemap输出文件到输入less文件的基目录的路径。
例如,如果您在 Web 服务器的根目录中生成了一个 css 文件,但将源文件 less/css/map 文件放在不同的文件夹中,请使用此选项。所以对于上面的选项,你可能有
【问题讨论】:
-
没有
--clean-css选项是否相同? (这是我怀疑的第一件事,因为它有自己独立的源映射引擎)。 -
是的,你是对的!我还发现
themes/bodensee不需要作为根路径。相反,它需要删除 css 目录。这两个文件都在同一个目录中,并且 css 指向 css.map 仅具有文件名。
标签: less source-maps