Я пытаюсь использовать bcrypt с продолжением, но с использованием класса. Возвращается: TypeError: Невозможно прочитать свойство 'hooks' из неопределенного - PullRequest
0 голосов
/ 03 мая 2020

Я также пытался поместить это в область действия модели, но она тоже не работает. Я также пытался следовать учебнику, чтобы включить ha sh в мою модель, однако я только нашел примеры с sequelize.define

const { Model, DataTypes } = require('sequelize')
const bcrypt = require('bcryptjs')

class User extends Model {
static init(sequelize){
    super.init({
        name: DataTypes.STRING,
        email: DataTypes.STRING,
        lastName: DataTypes.STRING,
        password: DataTypes.STRING
    }, {
        sequelize,
        freezeTableName: true,
     })
    }
  }

User.beforeCreate((user, fn) => {
const salt = bcrypt.genSalt(10, (err, salt) => {
    return salt
})

bcrypt.hash(User.password, salt, null, (err,hash) => {
    if(err) return next(err)
    User.password = hash
    return fn(null, User)
  })
 })

module.exports = User
...