コンストラクターを持たない型のGoogleClosureCompilerのexternを作成しようとしています。
私は次のことを試しましたが、メソッド/プロパティのコレクションではなく、型であるBad type annotation. Unknown type WindowsMediaActiveX.Cdrom
ことがコンパイラに通知されないため、エラーが発生します。WindowsMediaActiveX.Cdrom
/**
* @fileoverview Declares externs for the Windows media player ActiveX control.
* @author Joshua Dwire
* @suppress {duplicate}
*/
var WindowsMediaActiveX={};
/**
* Methods and properties for accessing a CD or DVD in its drive.
*/
WindowsMediaActiveX.Cdrom={};
/**
* Retrieves the CD or DVD drive letter.
* @type {string}
* @readonly
*/
WindowsMediaActiveX.Cdrom.prototype.driveSpecifier;
/**
* Methods and properties for accessing a collection of CD or DVD drives.
*/
WindowsMediaActiveX.CdromCollection={};
/**
* Retrieves the Cdrom object associated with a particular drive letter.
* @param {string} driveSpecifier String containing the drive letter followed by a colon (":") character.
* @returns {WindowsMediaActiveX.Cdrom}
*/
WindowsMediaActiveX.CdromCollection.prototype.getByDriveSpecifier=function(driveSpecifier){};
私は変更できることを知っています:
/**
* Methods and properties for accessing a CD or DVD in its drive.
*/
WindowsMediaActiveX.Cdrom={};
に:
/**
* Methods and properties for accessing a CD or DVD in its drive.
* @constructor
*/
WindowsMediaActiveX.Cdrom=function(){};
しかし、私や他の誰かがを使おうとしても、コンパイラは警告を表示しませんでしたnew WindowsMediaActiveX.Cdrom()
。これを定義する方法について何かアイデアはありますか?
詳細情報が必要な方のために、Windows MediaActiveXコントロールを使用してメディアを再生するメディアプレーヤーに取り組んでいます。また、GoogleClosureCompilerとLibraryを使用しています。プレーヤーが正しく機能するようにexternを定義する必要がありますが、ActiveXコントロールで使用されるタイプにはコンストラクターがありません。これらはすべて、他のメソッドまたはhtmlでオブジェクトを作成することによって作成されます。externファイルでこれをどのように定義する必要がありますか?ご協力いただきありがとうございます。