LESSHPP:也可以查看导入的文件

LESSHPP:也可以查看导入的文件,less,lessphp,Less,Lessphp,我在使用lesshp时遇到的一个恼人的问题是,它只监视要编译的文件,而不监视导入的文件 例如,我的less结构如下所示: // main.less // (compiled to styles.css) @import "variables" @import "objects" @import "theme" 因此,实际编译的文件只是导入我处理的样式和文件的根。每次我对样式进行更改时,我必须编辑main.less,以便重新编译它 是否有任何选项可以像在客户端compileless.js上那

我在使用lesshp时遇到的一个恼人的问题是,它只监视要编译的文件,而不监视导入的文件

例如,我的less结构如下所示:

// main.less 
// (compiled to styles.css)
@import "variables"
@import "objects"
@import "theme"

因此,实际编译的文件只是导入我处理的样式和文件的根。每次我对样式进行更改时,我必须编辑main.less,以便重新编译它


是否有任何选项可以像在客户端compileless.js上那样检查所有文件的更改?

当您检查php lessc编译器的源代码时(可以在中找到),您会发现脚本只计算作为参数传递的较少文件的修改时间

当您在/home/project/less中输入较少的文件时,例如,您可以在bin/less中的while1循环中的第125行附近添加以下代码:

while (1) {
    clearstatcache();
//keep original code here
$dir = '/home/project/less';
$dh  = opendir($dir);
while (false !== ($filename = readdir($dh))) {
    if(preg_match('/\.less$/',$filename) && filemtime($filename) > $lastAction)
    {
       $updated = true;
       break;
    }
}
if($updated) break;
}
while (1) {
    clearstatcache();
//keep original code here
$dir = '/home/project/less';
$dh  = opendir($dir);
while (false !== ($filename = readdir($dh))) {
    if(preg_match('/\.less$/',$filename) && filemtime($filename) > $lastAction)
    {
       $updated = true;
       break;
    }
}
if($updated) break;
}