Maison  >  Questions et réponses  >  le corps du texte

Pourquoi les fonctions de rappel de mes fonctions imbriquées ne fonctionnent-elles pas ?

J'utilise la fonction de rappel de Socket.io, comme ceci :

loadData(callback) {

var client = new SyncClient(this.socket, this.project);
this.client = client; //来自我的数据函数

    client.on("connected", () => {
        this.values = client.getData();
        callback(client);
    }
}

Mais quand j'appelle ma fonction loadData时,在控制台中出现了这个错误信息:Uncaught TypeError: callback is not a function.

Je pensecallback()正在尝试调用它的父级,而它的父级是在client.on内部创建的函数,而不是loadData(callback) ? Ou le problème est-il ailleurs ?

Dans mon mounted中这样调用我的loadData() :

mounted() {
    this.loadData(this.client)
}

P粉957661544P粉957661544213 Il y a quelques jours353

répondre à tous(1)je répondrai

  • P粉645569197

    P粉6455691972024-03-20 16:17:44

    Essayez d'utiliser les données (res) reçues de la fonction de rappel .find et transmettez-les à votre fonction de rappel :

    socket.on('getSettings', function (data, callback) {
    
        console.log('设置已广播。');
    
        lmsSettings.find({}, function (err, res) {
            callback(false, res); 
        });
    });

    répondre
    0
  • Annulerrépondre