0

我正在为我的 Web 应用程序使用 requireJS,但我对如何使用 requireJS 构建同一对象的递归映射感到困惑。例如,我的对象称为“部分”,我想使用相同的对象在每个对象下面创建一个子对象:

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
  }
}

这导致了自我引用的混乱。我不知道如何为新的子部分创建一个新的部分实例。

4

1 回答 1

0

这可能是可以在不更改 RequireJS 部分的情况下完成的事情。是否创建对 self 的引用,类似于window.self

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

如果每个 Section 都有一个新 Section 的子节点,除非它是按需生成的,否则代码将在 Section 之后无限循环构造 Section。

于 2013-09-04T22:20:07.320 回答