Laravel 5 拉维5和长生不老药-指向错误的目录

Laravel 5 拉维5和长生不老药-指向错误的目录,laravel-5,laravel-elixir,Laravel 5,Laravel Elixir,我有一个简单的脚本来组合这些样式: elixir(function(mix) { mix.styles([ 'bootstrap.min.css', 'font-awesome.css', 'animate.css', 'style.css' ], "public/frontend/css"); }); 我所有的css文件都在public/frontend/css目录中,我将styles函数的第二个参数设置为该基数

我有一个简单的脚本来组合这些样式:

elixir(function(mix) {
    mix.styles([
        'bootstrap.min.css',
        'font-awesome.css',
        'animate.css',
        'style.css'
    ], "public/frontend/css");
});
我所有的css文件都在
public/frontend/css
目录中,我将
styles
函数的第二个参数设置为该基数,但如果我运行
gulp
我会得到:

[19:18:22] Starting 'default'...
[19:18:22] Starting 'styles'...
[19:18:22] Merging: resources/css/css/bootstrap.min.css,resources/css/public/frontend/css/font-awesome.css,resources/css/public/frontend/css/animate.css,resources/css/public/frontend/css/style.css
[19:18:22] Finished 'default' after 196 ms
[19:18:22] File not found: resources/css/css/bootstrap.min.css
[19:18:22] File not found: resources/css/public/frontend/css/font-awesome.css
[19:18:22] File not found: resources/css/public/frontend/css/animate.css
[19:18:22] File not found: resources/css/public/frontend/css/style.css
[19:18:22] Finished 'styles' after 206 ms
因此它将基本目录设置为
resources/css

如何解决问题?

编辑 我误解了这个问题

mix.styles()
(和
mix.scripts()
)的第二个参数引用输出。但它需要第三个参数,参考基本路径,所以这是一个您应该更改的参数,如下所示:

elixir(function(mix) {
    mix.styles([
        'bootstrap.min.css',
        'font-awesome.css',
        'animate.css',
        'style.css'
    ], "path/to/output.css", "public/frontend/css");
});
如果需要,可以在配置中更改基本路径,如上所述:


在项目的根目录下创建一个
elixir.json
文件,然后将以下内容放在上面:

{
    "assetsDir": "public/frontend/"
}
你应该可以走了

为了提供更多信息,每当您需要覆盖默认配置时,请在该文件中执行该操作。 默认配置为:

var config = {
    production: !! util.env.production,
    srcDir: 'app',
    assetsDir: 'resources/assets/',
    cssOutput: 'public/css',
    jsOutput: 'public/js',
    sourcemaps: ! util.env.production,
    bowerDir: 'vendor/bower_components',
    tasks: [],
    watchers: { default: {} },
    duplicate: [],
    concatenate: { css: [], js: [] },
    compile: {}
};
node\u modules/laravel elixir/Config.js
编辑 我误解了这个问题

mix.styles()
(和
mix.scripts()
)的第二个参数引用输出。但它需要第三个参数,参考基本路径,所以这是一个您应该更改的参数,如下所示:

elixir(function(mix) {
    mix.styles([
        'bootstrap.min.css',
        'font-awesome.css',
        'animate.css',
        'style.css'
    ], "path/to/output.css", "public/frontend/css");
});
如果需要,可以在配置中更改基本路径,如上所述:


在项目的根目录下创建一个
elixir.json
文件,然后将以下内容放在上面:

{
    "assetsDir": "public/frontend/"
}
你应该可以走了

为了提供更多信息,每当您需要覆盖默认配置时,请在该文件中执行该操作。 默认配置为:

var config = {
    production: !! util.env.production,
    srcDir: 'app',
    assetsDir: 'resources/assets/',
    cssOutput: 'public/css',
    jsOutput: 'public/js',
    sourcemaps: ! util.env.production,
    bowerDir: 'vendor/bower_components',
    tasks: [],
    watchers: { default: {} },
    duplicate: [],
    concatenate: { css: [], js: [] },
    compile: {}
};

node\u modules/laravel elixir/Config.js
中,您应该将
自定义基本目录
传递给第三个参数,而不是第二个参数

组合来自自定义基本目录()的样式表


您应该将
自定义基本目录
传递给第三个参数,而不是第二个参数

组合来自自定义基本目录()的样式表