首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YUIDoc,记录“返回”对象的最佳方式

YUIDoc,记录“返回”对象的最佳方式
EN

Stack Overflow用户
提问于 2012-10-31 11:34:21
回答 2查看 901关注 0票数 2

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

我有我的主要对象--下面的伪代码中的'MakeOneOfThese‘--带有一个'ThingMaker’方法来返回形状定义。

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

  • MakeOneOfThese
  • shapeOne
  • shapeTwo

我的解决方法是在@类名中以其父类作为层次结构的前缀。然后,YUIDoc给了我:

  • MakeOneOfThese
  • MakeOneOfThese.shapeOne
  • MakeOneOfThese.shapeTwo

我很想知道更有经验的YUIDoc用户是如何解决这个问题的,以及我的解决方案如何被更合适的解决方案所取代,或者如何加以改进。

下面的伪代码已经准备好放到文件中并通过YUIDoc运行。

非常感谢你花了很多时间在答复上。安东尼

代码语言:javascript
复制
    /**
    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;
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-31 16:04:44

而不是@class MakeOneOfThese.shapeTwo,您可以

@命名空间MakeOneOfThese

@class shapeTwo

票数 0
EN

Stack Overflow用户

发布于 2013-03-07 10:51:00

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13156971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档