问题描述
我对webpack-encore和jQuery有问题。 我有一个带以下代码的custom.js文件:
import "../css/custom.css";
var $ = require("jquery");
global.$ = global.jQuery = $;
在树枝文件中,我有以下代码:
<script src="{{asset('build/js/custom.js')}}"></script>
<script>
$(document).ready(function (){
alert("1");
})
</script>
作为参数传递的custom.js路径正确。
当我使用yarn run encore dev
进行编译时,jQuery模块不在custom.js
的生成文件中,而是在另一个名为0.b9e94bd1.js
的文件中。
问题是它给了我错误$ is not defined
我该如何解决这个问题?
解决方法
我解决了这个问题。我用encore_entry_script_tags更改了树枝内的资产功能,现在定义了jQuery和$。
,我建议您在webpack.config.js中取消注释此行
// uncomment if you're having problems with a jQuery plugin
.autoProvidejQuery()
请参阅https://symfonycasts.com/screencast/webpack-encore/autoprovide-jquery-modules