createModalをModalというクラスに置き換えようとした次のコードがあります。ただし、このタイプスクリプトを試したところ、エラーが発生し、「リンクは現在のスコープに存在しません」と表示されます。
module Admin.MyAccount.Access {
export function createModal(link: Link) {
link.Modal.$Modal = $.modal({
resizeOnLoad: true
});
link.Modal.$Modal.applyTemplateSetup()
}
export class Modal {
link: Link;
constructor (link: Link) {
this.link = link;
}
create() {
link.Modal.$Modal = $.modal({ // < Error here
resizeOnLoad: true
});
link.Modal.$Modal.applyTemplateSetup() // < Error here
}
}
}
関数を使用しているときは、次のように関数を呼び出します。
createModal(link);
私はここで何か間違ったことをしていますか?create()内のリンクにアクセスできないのはなぜですか?また、静的関数を使用してこれを行うこともできます。Modalの新しいインスタンスを作成するためにnewを呼び出す必要がないので、それは簡単でしょうか?