JavaScript:如何正确地创建IDE提示类

时间:2012-05-15 17:53:39

标签: javascript

我正在使用Komodo IDE开发JavaScript库,但我希望我的IDE能够知道我拥有的对象类型以及它们的作用。特别是,我正试图解决这样的问题。请考虑以下事项:

NS = {
    Template: {
        Class1: function() { 
            this.arg1 = 0;
        }
    }
}

/**
 * @return {NS/Template/Class1}
 */
function test()
{
    return new NS.Template.Class1();
}

var tmp = test();
tmp. // that should give me a select box with "arg1" present

但上面的例子不起作用。我想我要么在@return中指定命名空间不正确,要么IDE根本不支持。以下示例不是我想要做的事情,但它有效:

NS = {
    Template: {
        /**
         * @type __Class1
         */
        Class1: __Class1 // this is only here for access via NS.*
    }
}

function __Class1()
{
    this.arg1 = 0;
}

/**
 * @return {__Class1}
 */
function test()
{
    return new __Class1();
}

var tmp = test();
tmp. // that does give a select box with "arg1" in it

基本上我要问的是,是否有人知道如何使用注释来使IDE(如果可能的话Komodo)识别“命名空间”中的类。第二个例子,虽然有效,但对我来说似乎非常难看,我不想使用它。

感谢您的想法

0 个答案:

没有答案