我关注此事:https://laravel.com/docs/5.3/elixir
这是我的gulpfile.js:
elixir(mix => {
mix.webpack('app.js')
.styles([
'bootstrap.min.css',
'agency.css',
'font-awesome.min.css',
'bootstrap-social.css',
'bootstrap-datetimepicker.min.css',
'select2.min.css',
'icheck.css',
'custom.css'
])
.scripts([
'jquery.easing.min.js',
'jqBootstrapValidation.js',
'agency.min.js',
'moment.js',
'bootstrap-datetimepicker.min.js',
'select2.min.js',
'contact_me.js',
'icheck.min.js',
'ckeditor.js',
'echo.js',
'custom.js'
])
.version(['css/all.css', 'js/all.js']);
});
在这里,我只是将所有css和js文件合并到两个文件中:all.css和all.js以最小化HTTP请求(以提高性能)
这两个合并的文件,存储在
public/build/css/all-5ba9458ba4.css
public/build/js/all-1723826a20.js
我将它们包含在以下模板中:
<link rel="stylesheet" href="{{ elixir('css/all.css') }}">
<script src="{{ elixir('js/all.js') }}"></script>
这里的问题是那些组合的css和js,即all.css和all.js存储在“build”目录中。
因此,我需要在该构建目录中移动其他相关的依赖项(如字体)。
那么,这里的解决方案是什么?
任何帮助将不胜感激。
谢谢,
Parth vora
答案 0 :(得分:1)
Elixir的version
方法允许您设置我认为的路径
mix.version(['css/all.css', 'js/all.js'], 'public');
然后使用
elixir('path/to/script.js', null) // note the null
在你的情况下
<link rel="stylesheet" href="{{ elixir('css/all.css', null) }}">
<script src="{{ elixir('js/all.js', null) }}"></script>
答案 1 :(得分:0)
这应该有效:
mix.version(['style.css', 'script.js'], 'public');
https://laravel.com/docs/5.3/elixir#versioning-and-cache-busting
答案 2 :(得分:0)
根据本文档,我认为没有为版本方法提供自定义路径的选项。
https://laravel.com/docs/5.3/elixir#versioning-and-cache-busting