【发布时间】:2021-11-05 19:42:05
【问题描述】:
我正在尝试使用 JavaScript 和 MySQL 为 NodeJS 应用程序创建模型。现在,我得到了使用构建器模式的提示,因为我的对象变得太大并且不可读。 因此,我创建了另一个类,并在构造函数中创建了一个基本类的实例,就像我在教程中看到的那样。
// Basic
class User {
constructor(fname) {
this.fname = fname;
};
}
// Builder for the user class
module.exports = class UserBuilder {
constructor(fname) {
this.user = new User(fname);
}
setLname(lname) {
this.user.lname = lname;
return this;
}
setEmail(email) {
this.user.email = email;
return this;
}
setPassword(password) {
this.user.password = password;
return this;
}
setAge(age) {
this.user.age = age;
return this;
}
setGender(gender) {
this.user.gender = gender;
return this;
}
setAvatar(avatar) {
this.user.avatar = avatar;
return this;
}
setPhoneNumber(number) {
this.user.number = number;
return this;
}
build() {
return this.user;
}
}
我的第一个问题是:如何验证所有论点?某些参数不是必需的,isAdmin 应默认为 False。
为了检查这一点,我创建了一个基本实例来查看如何构建。
const user = require('./models/user.js');
const User = new user('bob').setAge(22).build();
console.log(User);
我的第二个问题是如何在类中创建一个方法来编辑或删除对象并与数据库交互。还是应该在控制器中?
【问题讨论】:
标签: javascript mysql node.js