首页 > 解决方案 > 从方法中的回调获取主类(NODEJS)

问题描述

我需要从数据库中填写配置文件。但无法获得主类的属性。请告诉我可以解决的选项是什么?

班级:

class Operator {
    constructor(id) {
        this.operator_id = id;
        this.profiles = {};
    }

    getProfiles(){
        return this.profiles;
    }

    loadProfiles(){
        console.log('loading profiles');
        console.log(this.profiles);

        db.queryAll(`
        SELECT
        profiles.id,
        profiles.domain_id,
        profiles.name
        FROM
        operators_to_profiles
        LEFT JOIN profiles ON profiles.id = operators_to_profiles.profile_id
        WHERE operator_id = ${this.operator_id}
        `, function (data){
            console.log(Operator.getProfiles());
        });
    }
}

module.exports = {
    create : function (operator_id) {
        return new Operator(operator_id);
    }
};

用法:

let operator = Operators.create(operatorId);
operator.loadProfiles();

输出:

加载配置文件

{}

TypeError:Operator.getProfiles 不是函数

解决了:

        WHERE operator_id = ${this.operator_id}
        `, (data) => {
            console.log(data);
            console.log(this);
        });

标签: javascriptnode.jsclassmethodscallback

解决方案


推荐阅读