У меня есть следующая мутация в моем определении резольвера:
Mutation: {
async createUser(root, { username, email, password }, { models }) {
return models.User.create({
username,
email,
password: await bcrypt.hash(password, 10)
});
}
}
Единственная проверка, определенная до сих пор, - это not null
проверка моего typeDefs:
type Mutation {
createUser(username: String!, email: String!, password: String!): User!
}
Теперь это это здорово, потому что я не хочу, чтобы пользователь отправлял пустое поле в этом случае, но что я могу сделать, если я также хочу, чтобы пароль был длиной не менее 8 символов, или чтобы увидеть, является ли электронная почта действительным адресом? Что если имя пользователя уже занято? Как мне взять на себя все эти дела, используя apollo-сервер?
Заранее спасибо!