0

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

基本上,而不是像这样完成“引导”:

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/'
        }
    });
});

因此,如果我想在我的 app.less 中调用引导程序,它将是:

@import "bootstrap/bootstrap";

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

那么有没有办法在不手动移动文件的情况下做到这一点?

4

3 回答 3

2

不,没有办法在 Less 或派生工具中创建目录别名(了解您的操作系统是否有这样的......很多人都有)。此外,您始终可以在statements中使用变量@import,例如:

@bootstrap: "...bla-bla-bla/bootstrap-5.2.8/less"; // can be set via compiler options as well

@import "@{bootstrap}/bootstrap";
于 2015-06-18T06:13:58.063 回答
0

My gulpfile:

elixir(function(mix) {
    mix.sass('app.scss', 'public/css/', {includePaths: [
        'path/to/bower/components'
    ]});
});

Then include vendors like this:

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

Hope I helped you.

于 2015-06-18T06:11:11.267 回答
0

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

的第三个变量mix.less是插件选项,这意味着任何插件都更少,并且modifyVars在核心中可用。

所以:

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

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

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

@import "@{bootstrap}/bootstrap";

于 2015-06-18T19:50:48.730 回答