bagaimana saya bisa menggunakan kelas js saya di fungsi jQuery

saya membuat kelas saya

export default class Quiz{
    constructor() {
        this.quizWrapper = null;
        this.quizStage = null;
        this.progressed = 1;
        this.quizType = 'empty';
        this.scope = 0;
    }
    start(){
        this.scope= 1;
        return true;
    }
};

dan mengimpornya dengan

// let test = new Quiz();
// console.log(test); // --> reurn the class fine 

jQuery(document).ready(function ($) {
    var test = new Quiz();
    console.log(test.start()); // --> reurn true
}); 

jadi semuanya baik-baik saja tetapi jika saya memanggil test di konsol browser saya melihat kesalahan Uncaught ReferrenceError: test is not didefinisikan

jika saya melakukan ini:

jQuery(document).ready(function ($) {
    $.test = new Quiz();

Saya dapat menggunakannya dengan $.test di konsol browser.

Dapatkah seseorang tolong jelaskan kepada saya mengapa demikian? Saya ingin menginisialisasi modul saya setelah memuat skrip dari jQuery dan menggunakannya.


person Jury Dpling    schedule 23.10.2019    source sumber


Jawaban (1)


Itu karena Anda mendefinisikan test di dalam suatu fungsi, sehingga tidak melekat pada cakupan global

person Grammy    schedule 23.10.2019