10

因此,当我测试我的 Laravel 5.4 网站时,我的浏览器控制台行出现以下错误:

Uncaught ReferenceError: webpackJsonp is not defined at app.js:1

现在,老实说,我几乎不知道 webpack 和相关的东西,我只是按照说明编译资产,通常一切正常......

无论如何...我正在使用 Laravel 5.4 并已将 bootstrap3 换成 bootstrap4。否则一切都和默认的 laravel 设置一样。

我的webpack.mix.js样子是这样的:

mix.js('resources/assets/js/app.js', 'public/js')
.extract(['vue','tether','bootstrap'])
.sass('resources/assets/sass/app.scss', 'public/css');

我的assets/js/app.js(为了便于阅读,删除了默认注释)

require('./bootstrap');
Vue.component('example', require('./components/Example.vue'));
const app = new Vue({
    el: '#app'
});

我的assets/js/bootstrap.js(为了便于阅读,删除了默认注释)

window._ = require('lodash');
window.$ = window.jQuery = require('jquery');
require('bootstrap');
window.Vue = require('vue');
window.axios = require('axios');
window.axios.defaults.headers.common = {
    'X-CSRF-TOKEN': window.Laravel.csrfToken,
    'X-Requested-With': 'XMLHttpRequest'
};

我的主要布局刀片文件在底部

<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script>
<script src="/js/app.js"></script>
<script src="/js/vendor.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/raphael/2.2.7/raphael.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.min.js"></script>

如果你们能想到其他任何可能的原因,请告诉我,我会用代码片段更新。

抱歉缺少其他信息,我已经四处闲逛,老实说,我完全不知道可能出了什么问题或如何解决它。

4

1 回答 1

17

我很愚蠢。没有正确阅读文档。

主要是那句话:

为避免 JavaScript 错误,请确保以正确的顺序加载这些文件:

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

我添加了 manifest.js 并重新排序,现在一切正常。

于 2017-04-09T08:36:53.977 回答