在我们的网页上,我们有一些外部脚本可以加载像Axios和Vue这样的东西。然后在页面的下方,我们使用了那些内联脚本。
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/es6-promise/4.1.1/es6-promise.auto.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/vue/dist/vue.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/axios/dist/axios.min.js"></script>
... 100 + lines of html later ...
<script type="text/javascript">
'use strict';
$(document).ready(function() {
axios.defaults.baseURL = 'blahblah';
var app = new Vue({
...
});
});
</script>
我们发现axios是来自少数用户的未定义错误。我们试图模拟他们的操作系统/浏览器设置,但我们不能自己重现错误。
我们理解外部脚本应首先加载,浏览器只在所有外部脚本完成后才运行内联脚本?
有什么想法吗?
jQuery 1.7在此代码之前很久就加载在head标记中。在jQuery似乎没有帮助之前将外部脚本移动到头部。