zoukankan      html  css  js  c++  java
  • (转)RequireJS shim 用法说明

    RequireJS中如果使用AMD规范,在使用的过程中没有太多的问题,如果加载非AMD规范的JS文件,就需要使用Require中的shim.

    复制代码
    require.config({
        paths:{
            jquery:"/js/jquery2.0",
            InStorage:"/js/in/InStorage",
            Product:"/js/product/Product",
            cate:"/js/product/Category",
        },
        shim:{
            cate:{
                deps:[],
                exports:"Category"
            }
        }
    });
    复制代码

      cate:"/js/product/Category" 该文件是非AMD规范的JS,在使用的过程中遵循如下几个步骤:

      (1) paths 中配置文件加载的路径, JSON中的 Key值可以随意,尽量有意义,JSON中的Value是文件的加载路径,这个不必多说

      (2) shim 中定义一个JSON对象, Key 值(cate) 与paths中定义的名字一样

      (3) shim中的JSON对象有两个属性: deps,exports ;  deps 为数组,表示其依赖的库, exports 表示输出的对象名

    复制代码
    var Category=(function(){
    
        var param={};
    
        param.Add=function(){
            console.log("新增分类");
        }
    
        return param;
    
    })();
    
    
    var Category=(function(param){
    
        param.Write=function(){
            console.log("输出分类信息");
        }
    
        return param;
    
    })(Category||{});
    复制代码

      requirejs可以实现js的延时加载, 在方法调用的时候加载JS,也就是在function 中require 某个模块的信息

    复制代码
    define(function(){
    
        var ProductManager={
            Create:function(){
                console.log("创建产品");
    
                require(["cate"],function(cate){
                    cate.Write();
                    cate.Add();
                });
            }
        }
    
        return ProductManager;
    
    });
    复制代码
  • 相关阅读:
    audio之点击图标切换音频播放状态以及替换当前图标
    js之ajax的封装
    JavaScript之ajax的作用、流程以及如何设置请求头
    BFC的理解
    2016年总结
    如何用shared_ptr减少锁的争用
    webrtc初识
    2015总结与2016展望
    记一次程序排错与std::getline
    spawn协程学习
  • 原文地址:https://www.cnblogs.com/ximenxiazi/p/9055469.html
Copyright © 2011-2022 走看看