代码之家  ›  专栏  ›  技术社区  ›  ProEvilz

为什么我和拉威尔会得到未定义的JS?

  •  0
  • ProEvilz  · 技术社区  · 7 年前

    我用的是拉威尔和我的 bootstrap.js 我的档案

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

    然后我要求 归档到 app.js

    require('./bootstrap');
    

    我用 webpack.mix.js 去编译它

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

    应用程序.js 它工作得很好。

    但是,如果我尝试在 应用程序.js 在脚本标记中 那是后面的 ProgressBar undefined

    如何访问 在我的生活之外 但要通过 应用程序.js ?

    上的示例 index.blade.php

    <script src="app.js" defer></script>
    <script>
      const progress = new ProgressBar; //undefined...
    </script>
    
    2 回复  |  直到 7 年前
        1
  •  1
  •   ProEvilz    7 年前

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

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

    更改为

    <script src="app.js"></script>
    
        2
  •  0
  •   Nurbol Alpysbayev    7 年前

    我想,那个网页对你隐藏了ProgressBar,即使你有 ProgressBar 分配给 window . 因为你知道,Webpack认为bundle包含了你应用程序的所有代码。解决方案?别把它捆起来!而是使用 就像以前那样装。这是完全正常的,几纳秒好或坏,不明显。