次のコードがあります。
module Dialog {
export class Modal {
static createAccessModal(link: Link) {
createModal(link);
}
static createAdminModal(link: Link) {
link.Modal.MaxHeight = 600;
link.Modal.Width = false;
createModal(link);
}
static private createModal(link: Link) {
...
}
}
}
createModal を直接呼び出すことは許可されたくないので、非公開にしようとしました。インテリセンスを使用すると、それに対して小さなロック記号が表示されますが、使用してもエラーは発生しません。私がこれを行うことができる他の方法はありますか?関数を呼び出す方法は次のとおりです。
Dialog.Modal.createAccessModal(link); // I want this to be allowed
Dialog.Modal.createModal(link); // I don't want this to be allowed
ちなみに、これらの関数は画面上にオブジェクトを作成するだけで、オブジェクトは独自の送信ボタンなどを持っているため、自分自身を処理するため、すべてに静的関数を使用しています。これは合理的なことですか?