requirejs使用时,如果require发生错误时,处理error的方法亲测 收藏


  • :
  • 04-07 21:45
  • :
  • 31次
  • :
  • 0条
  • 1赞

简介使用requirejs加载js文件时,发生错误时的处理方法,即requirejs里的error对象。

requirejs插件可以让我们的web里的js文件的引用变得非常简单,大大优化了我们的web加载速度和体验。

最近站长在做一个web项目的时候,需要使用rquirejs来加载一个第三方的JS文件,但需要在加载出错的时候,加载另一个JS文件。

在网上找了好久的资料,最后才在官网找到,这里直接把方法分享给大家:

一般我们在引用模块或js文件的时候都是这样来用:

require(["jquery"],function($){
    //do something
});

其实 require还能添加第三个参数的,这第三个参数就是在require加载出错时,对错误的处理:

require(["jquery"],function($){
    //do something
},function(err){
    err.requireType; //错误提示,如“timeout”,“nodefine”,“scripterror”
    err.requireModules; //加载出错的模块名
});

比如,我们用的Jquery插件,如果加载出错了,可以这样来处理:

require(['jquery'], function ($) {
    //Do something
}, function(err){
    var failedId = err.requireModules && err.requireModules[0];    
    if (failedId === 'jquery') { 
        requirejs.undef(failedId); //注销注册的jquery模块
        //重新换个路径 定义jquery模块
        requirejs.config({
            paths: {
                jquery: 'local/jquery'
            }
        });        
        require(['jquery'],function(){});
    }else{
    
    }
});


您正在找的文章可能是: