【问题标题】:How can I change the public path to something containing an underscore in Laravel Mix?如何在 Laravel Mix 中将公共路径更改为包含下划线的内容?
【发布时间】:2017-06-22 10:30:45
【问题描述】:

在 Laravel 5.4 中引入了 Mix 来编译资产和维护资产管道。 Mix 默认将您的公共目录命名为public。在许多情况下,包括我的,我的公共目录被称为别的东西。就我而言,它是public_html。

如何更改资产编译到的公共目录?

我尝试将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 中,这很简单:

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

我检查了 Mix 的配置文件,但在这里看不到任何明显的东西。

请注意:这是 Laravel Mix,npm 包,所以它与 index.php 文件中的修改无关。

【问题讨论】:

    标签: php laravel laravel-elixir laravel-5.4 laravel-mix


    【解决方案1】:

    有一个未记录的(我相信)方法称为setPublicPath。然后,您可以从输出中省略公共路径。 setPublicPath 与下划线配合得很好。

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

    【讨论】:

      【解决方案2】:

      在 Laravel 5.4 中,您可以使用以下代码:

      在 AppServiceProvider 中:

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

      【讨论】:

      • 这与 Laravel Mix 无关。正如我的问题所述,Mix 是一个 NPM 包(javascript)。
      【解决方案3】:

      在 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');
      

      【讨论】:

        【解决方案4】:

        在 Laravel 5.8 中

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

        【讨论】:

          猜你喜欢
          • 2018-07-29
          • 2017-11-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-07-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多