自动淡出 <%= 通知 %> 和/或 <%= 警报 %> 闪烁消息



好的,所以我已经按照教程使用jQuery使我的rails flash警报淡出(第一次集成任何jQuery在rails -我仍然是一个初学者)。我已经添加了gem 'jquery-rails',在我的application.js中需要它,并且(现在)将这些行放在我的application.html.erb:

<script>
$(document).ready(function(){
setTimeout(function() {
$('.notice-wrapper').fadeOut("slow", function() {
$(this).remove();
})
}, 4500);
});
</script>

警报显示,但他们不淡出。我的检查员告诉我:

Uncaught ReferenceError: $ is not defined

根据我的研究,这可能意味着jquery还没有加载?所以我试着把剧本放进脑子里——没有变化。有人有这方面的经验吗?还是有更简单的解决方法?

谢谢你的帮助!

不工作的原因是因为我需要在我的environment.js中调整2行。这是我的默认值:

environment.plugins.prepend('Provide',new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
Popper: ['popper.js', 'default']  }));

将包含'jquery'的行调整为:

$: 'jquery/src/jquery',
jQuery: 'jquery/src/jquery',

这一切都行得通。希望有人觉得这有帮助。祝你今天愉快!