RequireJS路径中具有一个标识符的多个文件

Multiple files with one identifier in RequireJS paths

本文关键字:文件 标识符 有一个 路径 具有一 RequireJS      更新时间:2023-09-26

我的RequireJS配置如下。首先我想加载AngularJS,然后是我的引导程序app.js,然后是两个控制器,但它不会加载数组中的第二个文件。

我做错了什么?

require.config({
baseUrl: '/js/app',
paths: {
    'angular': '/js/vendor/angular/angular.min',
    'controllers': ['controllers/CartController', 'controllers/CatalogController']
},
shim: {
    'angular': {
        exports: 'angular'
    },
    'app': {
        deps: ['angular']
    },
    'controllers': {
        deps: ['app'],
    }
  },
});
require(['controllers'], function () {
 angular.bootstrap(document, ['MyApp']);
});

谢谢你的帮助!

paths的数组表示法用于从CDN加载的内容;因此RequireJS将尝试数组中的第一个条目(CDN),如果它失败了,将回退到第二个条目(应该由您自己的服务器提供服务)。

为了包含一个依赖项中的所有控制器,您可能需要创建一个伪(空)controllers.js,向其添加一个路径,并将其填充为:

shim: {
    'controllers': {
        deps: ['controllers/CartController', 'controllers/CatalogController']
    }
}