2010-12-30 30 views
7

Estoy usando Netbeans 6.9 y 7-Beta en Windows 7. De acuerdo con Netbeans javascript documentation debería ser posible agregar documentación a mi proyecto y obtener autocompletado en mis clases y funciones. El problema que estoy teniendo es que estoy usando mi propia declaración de clase (a través de una función llamada Class) y parece que las cosas no funcionan. Por ejemplo, una simple declaración de clase se vería así:Documentar javascript en Netbeans para autocompletar/completar código/intellisense

mySubClass = Class(parentClass, { 
    memberVariable: null, 

    /** 
    * @class mySubClass 
    * @constructor 
    */ 
    initialize: function(value) { 
    this.memberVariable = value; 
    }, 

    /** 
    * @class mySubClass 
    */ 
    getMV: function() { 
    return this.memberVariable; 
    }, 

    /** 
    * @class mySubClass 
    */ 
    setMV: function(value) { 
    this.memberVariable = value; 
    } 
}); 

He intentado muchas variaciones y colocaciones de las declaraciones (@class, @memberOf, etc) pero no puedo conseguir trabajo completado. Por ejemplo después,

var testObj = new my 

que debería ser capaz de obtener mySubClass pulsando la tecla "Ctrl + espacio" y del mismo modo procederá a:

var test = new mySubClass(1); 
test. 

y obtener opciones para getMV y setMV. ¿Es esto posible? Si es así, ¿cómo lo hago? Gracias.

+0

Dado que lo único que me importa es la finalización del código, estoy trabajando en un script para convertir mi javascript básico en un formulario que netbeans leerá correctamente. Informaré más tarde si lo hago funcionar. –

+0

¿Alguna vez resolvió esto? También estoy buscando una manera de que netbeans proporcione la finalización del código en definiciones de clases similares a las suyas. – Tristan

+0

@Tristan: No he encontrado una solución todavía. Miré la codificación de un complemento para hacer esto, pero es mucho más complejo de lo que tengo tiempo. ¿Hay alguna manera de cerrar una pregunta que no tiene respuesta? –

Respuesta

0

Tuve el mismo problema. Su código podría haber sido simplificado, tuve que leer dos veces para entender que la clase era una función personalizada de los suyos, no sintaxis de JS ..

foo.canvas = function(id) { 
    this.clear = function() {}; 
}; 
bar = foo.canvas("myCanvas"); 
bar. <-- here NetBeans doesn't suggest the "clear" function. 

Parece el NetBeans no hace bien en la introspección JS. Solo parece funcionar para los objetos nativos y host.

Prueba Komodo Edit, parece hacerlo bien.

+0

Gracias por mirar el problema. Soy reacio a aprender un editor completamente nuevo para solucionar este problema, especialmente porque no está claro que funcionará con mi función 'Clase 'como se mencionó originalmente. Estoy empezando a pensar que las veriones actuales (6.9 y 7beta) no harán lo que necesito que hagan. Tengo un truco de una solución en proceso (más adelante) y espero que pronto agreguen un soporte jsdoc más detallado. –

0

Es debería trabajar con @lends (ver JSDoc-toolkit CookBook). Sin embargo, no funciona en Netbeans 7.2 (incluso @type y @link no funcionan).

Cuestiones relacionadas