Requirejs Require.js优化器仅缩小main.js并忽略';路径';

Requirejs Require.js优化器仅缩小main.js并忽略';路径';,requirejs,Requirejs,main.js: require.config({ baseUrl: 'js/', paths: { 'd3': 'lib/d3', 'text': 'lib/text', 'jquery': 'lib/jquery', 'topojson': 'lib/topojson', 'statecodes': 'lib/statecodes', 'underscore': 'lib/underscore' }, shim: {

main.js:

require.config({
  baseUrl: 'js/',

  paths: {
    'd3': 'lib/d3',
    'text': 'lib/text',
    'jquery': 'lib/jquery',
    'topojson': 'lib/topojson',
    'statecodes': 'lib/statecodes',
    'underscore': 'lib/underscore'
  },

  shim: {
    'lib/bootstrap': {
      deps: ['jquery']
    },
    'lib/backbone': {
      deps: ['jquery', 'underscore'],
      exports: 'Backbone'
    },
    'lib/wreqr': {
      deps: ['lib/backbone']
    },
    'lib/marionette': {
      deps: ['lib/wreqr'],
      exports: 'Marionette'
    }
  }
});

var deps = [
  'app',
  'utils/dataserver',
  'd3',
  'text',
  'jquery',
  'topojson',
  'statecodes',
  'underscore',
  'lib/bootstrap',
  'lib/backbone',
  'lib/marionette'
];

require(deps, function(app, ds) {
  app.start();
  ds.fetchall();
});
配置文件app.build.js:

({
  baseUrl: "../js",
  name: 'main',
  mainConfigFile: '../js/main.js',
  out: "../js/build.js"
})
通过运行
r.js-oapp.build.js
我希望优化器缩小并连接
path
中的脚本。但它所做的只是缩小
main.js
。我错过了什么

r.js-o app.build.js的输出

Tracing dependencies for: main
Uglifying file: /Project/web/js/build.js

/Project/web/js/build.js
----------------
/Project/web/js/main.js

r.js
将只跟踪应用程序所需的所有依赖项。您需要包括入口点
require([],function(){})
main.js
中,或者基本上是开头的
require
块,当定期使用RequireJS时,该块应该包含在
data main
中指定的脚本中

必须将依赖项的文本数组而不是变量
deps,
作为
require的第一个参数传递。
否则,优化器不知道要包含哪些文件。

我对帖子进行了编辑,并添加了
require()
调用。但是,这并没有改变运行
r.js
的行为。您可以尝试从生成文件中删除
maincigfile
属性吗?嗯,应该可以。尝试完全跳过构建文件,只需在js目录中执行
node r.js-o name=main out=build.js