Vue项目中遇到的问题,关于require与trycatch

<script>
            var fnLoadJS = function() {
                require(['xxxx.min.js'], function() {});
            }
                try {
                    fnLoadJS()
                } catch (e) {
                    fnLoadJS()
                }
        </script>

这段代码是写在index.html当中的
有两个问题
1.image.png
会报这个错误,请问如何解决
2,上面的try catch只会再进入首页之后执行一次,刷新页面就不执行了,请问如何解决,不想使用setInterval,

注:第一次进入页面log打印fnLoadJS会有值,刷新之后,打印就是undefined了
阅读 5k
2 个回答
  1. 浏览器全局对象里并没有 require 这个方法,绝大多数时候,这个方法是 webpack 等打包工具引入进来的,方便我们做包管理所。以你在 <script> 标签里(也就是全局环境下)直接用,当然会报 undefined 错误
  2. 你写在 <script> 里,页面没渲染一次就会执行一次,不可能刷新就没了,一定有其他问题
  3. 你的问题跟 Vue 无关

requirejs?

//你之前有定义吗?
require.config({
    paths:{
        "jquery":'../lib/jquery.min'
    }
});
require(['jquery'],function($){
    ... 
    //通过此方式引入jquery才能使用$,接下来正常写jquery代码就好
})

再说这个东西,应该是啥时候调用都会报错的,你也没有console怎么会undefined呀。我猜是加载顺序的问题吧,你查查你是不是顺序有问题

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题