首页 > 解决方案 > 为什么我使用 Laravel 得到未定义的 JS?

问题描述

我正在使用 Laravel,在我的bootstrap.js文件中我有

window.ProgressBar = require('progressbar.js');

然后我要求将bootstrap.js文件放入app.js

require('./bootstrap');

webpack.mix.js用来编译它

mix.js('resources/assets/js/app.js', 'public/js')

如果我尝试访问它里面的progressbar.jsapp.js就可以完美地工作。

但是,如果我尝试在我的页面之后app.js的脚本标记之外使用它,则为. app.jsProgressBarundefined

如何在我ProgressBar的外部访问app.js但通过 导入app.js

示例index.blade.php

<script src="app.js" defer></script>
<script>
  const progress = new ProgressBar; //undefined...
</script>

标签: javascriptlaravelecmascript-6laravel-mix

解决方案


我有defer脚本标签,出于某种原因,它停止了工作。

解决方案:

<script src="app.js" defer></script>

改成

<script src="app.js"></script>

推荐阅读