如何在 Symfony 项目中使用 jQuery 和 webpack-encore?
How to use jQuery with webpack-encore in a Symfony project?
我对 webpack-encore 和 jQuery 有疑问。
我有一个包含此代码的 custom.js 文件:
import "../css/custom.css";
var $ = require("jquery");
global.$ = global.jQuery = $;
在 twig 文件中我有这段代码:
<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
我对 webpack-encore 和 jQuery 有疑问。 我有一个包含此代码的 custom.js 文件:
import "../css/custom.css";
var $ = require("jquery");
global.$ = global.jQuery = $;
在 twig 文件中我有这段代码:
<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