Laravel Elixir/Less包含路径作为文件夹

Laravel Elixir/Less包含路径作为文件夹,less,laravel-5,laravel-elixir,Less,Laravel 5,Laravel Elixir,我一直在查找,但找不到将文件夹添加到较少包含路径的方法。或者“命名空间”它 基本上,而不是像这样进行“引导”: elixir(function(mix) { mix.less('app.less', 'public/css/', { paths: [ paths['bootstrap'] + 'less/' ] }); }); 就像 elixir(function(mix) { mix.less('app.less

我一直在查找,但找不到将文件夹添加到较少包含路径的方法。或者“命名空间”它

基本上,而不是像这样进行“引导”:

elixir(function(mix) {
    mix.less('app.less', 'public/css/', {
        paths: [
            paths['bootstrap'] + 'less/'
        ]
    });
});
就像

elixir(function(mix) {
    mix.less('app.less', 'public/css/', {
        paths: {
            'bootstrap': paths['bootstrap'] + 'less/'
        }
    });
});
因此,如果我想在我的应用程序中调用bootstrap.less,它将是:

@import“引导/引导”

这是因为包含多个较少的资源有时会导致多个文件具有相同的名称


那么,是否可以在不手动移动文件的情况下执行此操作?

My
gulpfile

elixir(function(mix) {
    mix.sass('app.scss', 'public/css/', {includePaths: [
        'path/to/bower/components'
    ]});
});
然后包括这样的供应商:

@import "bootstrap-sass/assets/stylesheets/bootstrap";
@import "fontawesome/scss/font-awesome";

希望我能帮助您。

不,没有办法在Less或派生工具中创建目录别名(了解您的操作系统是否有这样的…很多都有)。此外,您还可以随时使用,例如:


我找到了神奇的答案,虽然这是一个非常接近的
seven phases max
,但这只是一个完整的版本

mix.less
的第三个变量用于插件选项,这意味着任何用于less和
modifyVars的插件都可以在核心中使用

因此:

有点奇怪,必须用
包装,但当它添加变量时,它会添加原始变量

其余部分使用另一个答案,但您可以使用


@import“@{bootstrap}/bootstrap”

是的,这是我一直在考虑的一种方法。我会尝试一下,尽管我相当肯定这会奏效。
@bootstrap: "...bla-bla-bla/bootstrap-5.2.8/less"; // can be set via compiler options as well

@import "@{bootstrap}/bootstrap";
elixir(function(mix) {
    mix
        .less('app.less', 'public/css/', {
            modifyVars: {
                'bootstrap': '"' + path.resolve(__dirname) + paths['bootstrap'] + 'less/' + '"'
            }
        })
});