微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

设计NodeJS MySQL模型构造函数的最佳方法

如何解决设计NodeJS MySQL模型构造函数的最佳方法

我正在尝试遵循一种使用NodeJS和MysqL管理模型的模式来完成以下任务:

    customer = new Customer(1);
    customer.name = "John Doe";
    customer.save();

为完成上述工作,我想要一个构造函数,该构造函数将接收客户ID,从DB查询客户,然后将对象值设置为返回的值(请参见下文)。在设置对象值返回未定义状态时,我遇到了困难。这是最好的方法吗?

    class customer {
        constructor(id){
            if (id) {
                this.load(id);
            }
        }

        load(id){
            db.query("SELECT * FROM customers WHERE id = " + id,function (err,res){
                if (err) {
                    console.log(err);
                } else {
                    this.id = res[0].id;
                    this.name = res[0].name;
                    this.email = res[0].email;
                }
            });
        }

        save(){
            let sql = "UPDATE customers SET name = ?,email = ? WHERE id = ?";
            let data = [this.name,this.email,this.id];
            db.query(sql,data,res){
                if (err) {
                    console.log(err);
                } else {
                    console.log("Updated customer " + this.id);
                }
            });
        }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。