假设我将较少的文件分成许多较少的文件以便于组织。 这是我的存储库:
/reset.less
/variables.less
/mixins.less
/main.less
/styles.less
styles.less只是导入其他文件:
@import "reset.less";
@import "mixins.less";
@import "variables.less";
@import "main.less";
但是,当我在main.less中添加一些代码并使用在variables.less中定义的@ line-color。它显示名称Error: variable @line-color is undefined
,我无法编译它 - 我使用PHPStorm少插件。
你能请求我吗?
答案 0 :(得分:12)
您必须将变量导入所有使用变量的文件。
修改强>
你必须只编译你的style.less。你不能编译main.less,因为它不知道变量。但是你不需要main.CSS,不是吗? 你应该得到正确的style.css,这是(我猜)你需要的唯一的css文件。
答案 1 :(得分:1)
我可以通过在PHPstorm中执行以下操作来解决它:
../css/$FileNameWithoutExtension$.css
(在前面添加“ ../ css / ” - 具体取决于您要将css文件写入的文件夹)/Users/macuser/htdocs/MySite/sites/all/themes/mytheme/less
(取决于哪个文件夹包含.less文件)/Users/macuser/htdocs/MySite/sites/all/themes/mytheme/less/style.less
(文件名取决于哪个.less文件编译其他.less文件) 注意:如果启用了压缩CSS输出,这意味着每次右键单击.less
- 文件并点击“时,都会压缩代码”编译为CSS“。默认情况下,对.less
- 文件所做的每次修改都不会压缩输出。如果你想立即压缩CSS,
sudo npm install -g less-plugin-clean-css
--clean-css --no-color $FileName$
(在前面添加“--clean-css”)。
现在它将在您编码时自动编译CSS。您将不再需要手动编译。