这是 /laravel/webpack.mix.js
的内容:
mix
.js([
'resources/assets/js/jquery.js',
'resources/assets/js/plugin.js'
], 'public/js/my_app.js');
/resources/assets/js/jquery.js
的内容为:
window.$ = window.jQuery = require('jquery');
/resources/assets/js/plugin.js
的内容是这样写的本地代码:
(function($) {
// plugin script
})(jQuery);
当plugin.js脚本本地编写(如上所述)时,它在my_app.js中加载到jQuery 之后<(例如 plugin.js 那么 jQuery )
但是
当我直接从“require”或“import”指令中提取plugin.js时
node_modules **,例如用plugin.js编写的require('plugin')
,顺序正常:
首先加载 jquery.js THEN plugin.js 。
我的问题:
我想在plugin.js之前加载jquery.js。
那么,当plugin.js是本地脚本时,如何尊重命令?
答案 0 :(得分:0)
Laravel mix提供了一个功能,您可以将供应商库提取到vendor.js
。但您必须确保在app.js
之后调用您的应用代码vendor.js
。
<script src="/js/manifest.js"></script>
<script src="/js/vendor.js"></script>
<script src="/js/app.js"></script>
答案 1 :(得分:0)
.extract调用后,添加
autoload({
jquery: ['$', 'jQuery', 'window.jQuery']
});
所以,
mix.js(...).extract(...).autoload(...);
编辑:刚刚看到您尝试过这个
的回复