2012-08-15 31 views
6

Tôi cố gắng để ghi lại một máy phát điện chức năng nhưng không thành công, đây là một ví dụ:Làm cách nào để ghi lại trình tạo hàm bằng jsdoc?

function genericObjectGenerator(tagname) { 
    var specificObject = function() {}; 

    specificObject.getClassName = function() { 
    return tagname; 
    } 

    specificObject.prototype.sayHello = function(name) { 
    return tagname + " says hello to " + name; 
    } 

    return specificObject; 
} 

var MyObject = genericObjectGenerator("object1"); 

var myObjectInstance = new MyObject(); 

myObjectInstance.sayHello(); 

Làm thế nào tôi nên ghi lại các chức năng specificObject nó genericObjectGenerator và để có được JSDoc (và IntelliJ) để giải quyết sayHello đúng .

+1

Anti-mẫu cần nản hơn. – katspaugh

Trả lời

0

này nên làm các trick

/** 
* @param {string} tagname - the name of the tag 
* @returns {specificObject} 
*/ 

function genericObjectGenerator(tagname) { 
    var specificObject = function() {}; 

    specificObject.getClassName = function() { 
     return tagname; 
    }; 

    /** 
    * @param {string} name - name as string 
    * @returns {string} 
    */ 

    specificObject.prototype.sayHello = function(name) { 
     return tagname + ' says hello to ' + name; 
    }; 

    return specificObject; 
} 

var MyObject = genericObjectGenerator('object1'); 

var myObjectInstance = new MyObject(); 

myObjectInstance.sayHello(123); // mark as warning 
myObjectInstance.sayHello('123'); // not marking 
Các vấn đề liên quan