Javascript 使用RequireJS进行递归映射

Javascript 使用RequireJS进行递归映射,javascript,requirejs,requirejs-define,Javascript,Requirejs,Requirejs Define,我正在为我的web应用程序使用requireJS,我被如何使用requireJS构建同一对象的递归映射难住了。例如,我的对象称为“section”,我希望使用相同的对象在每个对象下面创建一个子对象: Section > Section > Section > (etc...) 以下是section.js的内容: define(['jquery'], function($) { children = []; function init

我正在为我的web应用程序使用requireJS,我被如何使用requireJS构建同一对象的递归映射难住了。例如,我的对象称为“section”,我希望使用相同的对象在每个对象下面创建一个子对象:

Section
  > Section
    > Section
        > (etc...)
以下是section.js的内容:

define(['jquery'], function($) { 
  children = [];  

  function init() {
    require(['jquery', 'section'], function($, section) {
      children.push(section.init(mediator, this));
    });

    return children;
  }

  return {
    init: init
  }
}

这导致了自我参照的混乱。我不知道如何为新的子节创建新的节实例。

这可能是在不更改RequireJS部分的情况下可以完成的。创造自我参照的想法是否类似于

如果每个部分都有一个子部分是一个新的部分,除非它是按需生成的,否则代码将无限循环构造一节又一节

function Section() {
    this.children = [];
}
var section = new Section();
section.children.push(section);