2

我有类似的东西:

/**
* @class
*/
NS.MyAwesomeObject = Class.create();

NS.MyAwesomeObject.prototype = {
 /**
 * @param id - the id
 * @return - an alert dialog with an id
 */
 initialize : function(id){
    alert(id);
 }
}

我错过了什么吗?我起床到NS。-> 自动完成:MyAwesomeObject,但我想要 NS.MyAwesomeObject。-> 自动完成:初始化(id)。

当我不使用 Class.create() 时,它适用于其他情况。我用谷歌搜索,解决方案是添加@class,但这对我不起作用。

谢谢!

4

1 回答 1

4

它对我有用。顺便说一句,Eclipse 没有 jsDoc 3 支持。使用 jsDoc 3,您的代码如下所示:

var NS = {};

/** @class */
NS.MyAwesomeObject = Class.create(
    /** @lends NS.MyAwesomeObject.prototype */
    {
        /**
         * @constructs
         * @param {Number} id - the id
         * @returns {Void} - an alert dialog with an id
         */
        initialize:function (id) {
            alert(id);
        }
    });

jsDoc 3 的代码完成现在仅适用于 WebStorm(或其他 Jetbrains 产品)。

Oo 任何 IDE 中的 javascript 代码完成(也有这个问题。)

于 2012-09-19T14:31:00.017 回答