Sto preparando gli extern per la libreria PIXI.js. Sto ottenendo il seguente avviso:Extern del compilatore di chiusura - AVVISO - Proprietà non definita su
js/Test.js:188: WARNING - Property position never defined on PIXI.Sprite
button.position.y = y;
Ecco le pertinenti definizioni Esterno:
// UPDATE
/**
* @constructor
* @extends {PIXI.Container}
* @param {PIXI.Texture} texture
*/
PIXI.Sprite = function(texture){};
/**
* @constructor
* @extends {PIXI.DisplayObject}
*/
PIXI.Container = function(){};
/**
* @constructor
* @extends {PIXI.EventEmitter}
*/
PIXI.DisplayObject = function(){};
/**
* @type {PIXI.Point}
*/
PIXI.DisplayObject.position;
Ancora ottenere lo stesso avvertimento.
Cosa sto sbagliando?
Quando sto sostituendo PIXI.DisplayObject.position;
con PIXI.DisplayObject.prototype.position;
che sembra cancellare l'avviso.
Significa che dovrei sempre definire SomeObject.prototype.prop
piuttosto che SomeObject.prop
?
Chiusura-compilatore non lo fa comprendere le annotazioni '@ member',' @ memberof' o '@ class'. Inoltre, le annotazioni '@ extends' hanno bisogno di parentesi:' @extends {parentType} '. Questo è il riferimento delle annotazioni che il compilatore comprende: https://developers.google.com/closure/compiler/docs/js-for-compiler –
@ChadKillingsworth Grazie per il tuo commento, ho apportato le correzioni, ottenendo sempre lo stesso avviso . Ho aggiornato la domanda. Sembra funzionare se aggiungo 'prototype'. Devo sempre definire 'SomeObject.prototype.prop' piuttosto' then SomeObject.prop'? –