为什么在requirejs shim part

时间:2016-01-08 11:42:20

标签: javascript angularjs requirejs

 shim:{
    angular: {
        exports: "angular" //first export this with angular 
    },
    uirouter:{
      deps:['angular']
    },
    ngResource: {
        deps: ['angular'],
        exports: 'angular'// now doing same here
    },
    app: {
        deps:['angular','uirouter']
    }
}

我无法理解为什么我们为不同的模块配置使用相同的导出名称。

1 个答案:

答案 0 :(得分:1)

for (let i值可以是全局空间中定义的任何值。它不一定是被加载的模块创建的东西。

拥有一个模块ike exports export ngResource是一个方便的问题。它使用Angular注册自己,然后返回对Angular的引用,以便您可以执行以下操作:

angular

而不是必须将require(['ngResource'], function (angular) { 指定为单独的依赖项:

angular