2017-02-05 19 views
7

В Laravel 5.4 Предназначен для компиляции активов и поддержания конвейера активов. Смешайте значения по умолчанию с вашим общим каталогом с именем public. Во многих случаях, включая мой, мой общий каталог называется чем-то другим. В моем случае это public_html.Как я могу изменить общедоступный путь к чему-то, содержащему символ подчеркивания в Laravel Mix?

Как изменить общий каталог, в котором скомпилированы активы?

Я попытался изменить пути в webpack.min.js к:

mix.js('resources/assets/js/app.js', 'public_html/assets/js') 
    .sass('resources/assets/sass/app.scss', 'public_html/assets/css'); 

К сожалению, это компилируется:

- public 
|- _html 
|-- assets 
|--- css 
|--- js 
|- fonts 

В Laravel 5.3 и эликсира это было так просто, как:

elixir.config.publicPath = 'public_html/assets'; 

Я проверил конфигурационный файл Mix, но не вижу ничего очевидного здесь.

Обратите внимание: это Laravel Mix, пакет npm, поэтому он не имеет ничего общего с изменениями в файле index.php.

ответ

12

Существует недокументированный (я считаю) метод, называемый setPublicPath. Затем вы можете опустить общедоступный путь с выхода. setPublicPath играет красиво с подчеркиваниями.

mix.setPublicPath('public_html/'); 
mix.js('resources/assets/js/app.js', 'assets/js') 
    .sass('resources/assets/sass/app.scss', 'assets/css'); 
1

В Laravel 5.4 вы можете нам этот код:

в AppServiceProvider:

public function register() 
{ 

    $this->app->bind('path.public', function() { 
     return base_path() . DIRECTORY_SEPARATOR .'public_html'; 
    }); 

} 
+1

Это не имеет ничего общего с Laravel Mix. Mix - это пакет NPM (javascript), как указано в моем вопросе. – Mike

0

В Laravel 5.5 Я решил, как это,

mix.setPublicPath('public_html/') 
    .js('resources/assets/js/app.js', 'front/js') 
    .js('resources/assets/js/custom.js', 'front/js') 
    .sass('resources/assets/sass/app.scss', 'front/css') 
    .styles('resources/assets/css/custom.css', 'public_html/front/css/custom.css'); 
+1

Это то же самое, что и принятый ответ. – Mike

 Смежные вопросы

  • Нет связанных вопросов^_^