Grunt requirejs嵌套依赖项

Grunt requirejs nested dependencies

本文关键字:依赖 嵌套 requirejs Grunt      更新时间:2023-09-26

我有一个包含所有路径和填充程序数据的配置文件:

require.config({
paths : {
    'jquery'                : 'libs/jquery-1.10.2.min',
    'backbone'              : 'libs/backbone-min',
    'underscore'            : 'libs/underscore-min',
    'layer'                 : 'src/views/base/LayerView'
    ...
},

shim : {
    'backbone': {
        deps    : ['underscore', 'jquery'],
        exports : 'Backbone'
    },
    'underscore' : {
        exports : '_'
    },
  }
});

作为应用程序起点的主文件:

require(['./config'], function (config) {
require(['jquery', 'underscore', 'backbone', 'src/router/PageRouter'], function($, _, Backbone, PageRouter) {
    new PageRouter();
    Backbone.history.start();
   });
});

如果我运行grunt requirejs任务,它不包括依赖项:

        options: {
            baseUrl             : '_js',
            name                : "src/main",
            mainConfigFile      : basePath + '_js/src/main.js',
            out                 : basePath + '_js/min/script.min.js',
            normalizeDirDefines : 'all'
        }

我做错了什么?

简单的解决方案是启用findNestedDependencies标志。

您可能想去掉嵌套的依赖项,请参阅分离配置文件和deps-config及解释。