Javascript YUIDoc,记录的最佳方式';返回';物体

Javascript YUIDoc,记录的最佳方式';返回';物体,javascript,yui,documentation-generation,Javascript,Yui,Documentation Generation,我第一次在一个新项目中使用YUIDoc。我正在创建对象(彼此隔离),这些对象将控制其自身形状的创建和跟踪,这些形状稍后将写入屏幕 我有我的主要对象——下面的伪代码中的“makeoneofse”——用“ThingMaker”方法返回形状定义 当我生成YUIDocs时,我在左边有一个很长的类列表,它们之间没有关系。因此,我以推荐的方式应用了@for,但我最左边的类列表仍然不代表类列表中的层次结构或类文档的主体。例如,类列表如下所示: 做其中之一 夏皮恩 沙佩沃 我的解决方法是在@class名称中

我第一次在一个新项目中使用YUIDoc。我正在创建对象(彼此隔离),这些对象将控制其自身形状的创建和跟踪,这些形状稍后将写入屏幕

我有我的主要对象——下面的伪代码中的“makeoneofse”——用“ThingMaker”方法返回形状定义

当我生成YUIDocs时,我在左边有一个很长的类列表,它们之间没有关系。因此,我以推荐的方式应用了@for,但我最左边的类列表仍然不代表类列表中的层次结构或类文档的主体。例如,类列表如下所示:

  • 做其中之一
  • 夏皮恩
  • 沙佩沃
我的解决方法是在@class名称中的层次结构前面加上它们的父类。然后YUIDoc给了我:

  • 做其中之一
  • 做一个这样的人
  • 做一个这样的人
我很想知道更有经验的YUIDoc用户是如何做到这一点的,以及我的解决方案如何被更合适的解决方案所取代,或者如何改进

下面的伪代码已准备好放入文件并通过YUIDoc运行

非常感谢您在回复上花费的时间。 安东尼


您可以使用@class makeoneofthes.shapeTwo来代替@class makeoneofthes.shapeTwo

@命名空间是其中之一


@类shapeTo

或者,您也可以尝试JsDuck,它使用与YUIDoc相同的标记(几乎全部),生成的文档不仅更漂亮,而且还维护了类层次结构

感谢@namespace提示,它确实使文档编写时更加简洁。我已经重新阅读了文档,并尝试了YUIDoc论坛,但没有发现问题,也没有询问或回答,因此我会将其张贴在那里供考虑。
    /**
    The main constructor
    @class MakeOneOfThese 
    @constructor
    @param [options]{Object}
      @param [options.gridSize] {Integer}  The pixel dimensions for the grid
      @default 20

    **/
    function MakeOneOfThese(options) {
      var that= {
          //game properties
          //game methods

        /**
        A shape chooser
        @method ThingMaker
        @constructor
        @param thingType {String}
        @return MakeOneOfThese.ThingMaker.piece {object} an object representing definition information for the
        named shape type
        **/
        ThingMaker: function(thingType) {
            var PieceDefinitions = {
                /**
                A shape definition
                @class MakeOneOfThese.shapeOne
                @return MakeOneOfThese.ThingMaker.piece {object} 
                **/
                shapeOne: function() {
                    var piece = {
                      name: "ShapeOne",
                      signature: {
                         n: [[1],[1,1],[0,1]],
                         e: [[0,1,1],[1,1]], 
                         s: [[1],[1,1],[0,1]],
                         w: [[0,1,1],[1,1]]
                      }
                    }
                    return piece;
                }
                /**
                A shape definition
                @class MakeOneOfThese.shapeTwo
                @return MakeOneOfThese.ThingMaker.piece {object} 
                **/         
                shapeTwo: function() {
                  var piece = {
                    name: "ShapeTwo",
                    signature: {
                       n: [[1],[0,1],[0,1]],
                       e: [[0,1,1],[1,1]], 
                       s: [[1],[0,1],[0,1]],
                       w: [[0,1,1],[0,1]]
                    }
                  }
                  return piece;
                }
          }
      }
      return that;
    }