我第一次在一个新项目上使用YUIDoc。我正在创建对象(彼此隔离),这些对象将控制创建和跟踪它们自己的形状,然后将其写入屏幕。
我有我的主要对象--下面的伪代码中的'MakeOneOfThese‘--带有一个'ThingMaker’方法来返回形状定义。
当我生成YUIDocs时,左边有一个很长的类列表,它们之间没有任何关系。因此,我以推荐的方式应用@for,但我最左边的类列表仍然没有表示类列表中的层次结构或类文档的主体。例如,类列表如下:
我的解决方法是在@类名中以其父类作为层次结构的前缀。然后,YUIDoc给了我:
我很想知道更有经验的YUIDoc用户是如何解决这个问题的,以及我的解决方案如何被更合适的解决方案所取代,或者如何加以改进。
下面的伪代码已经准备好放到文件中并通过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;
}发布于 2012-10-31 16:04:44
而不是@class MakeOneOfThese.shapeTwo,您可以
@命名空间MakeOneOfThese
@class shapeTwo
发布于 2013-03-07 10:51:00
或者,您也可以尝试JsDuck,它使用与YUIDoc相同的标记(几乎所有标记),并生成不仅更漂亮的文档,而且还维护类层次结构
https://stackoverflow.com/questions/13156971
复制相似问题