最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

为什么加入。方法,就当我无功返回未定义?

IT培训 admin 5浏览 0评论

为什么加入。方法,就当我无功返回未定义?

我试图bycrypt添加到认证表,但我得到一个错误,authTable试图添加generateHash和validPassword方法时,是不确定的。是否有什么我不理解有关authTables.methods部分?

当我注释掉generateHash和validPassword部分,导致我相信。方法是挂断代码工作。

var bcrypt = require("bcryptjs");

module.exports = function (sequelize, DataTypes) {
  var authTable = sequelize.define("authTable", {

    username: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      len: [1, 30]
    }
  },
  password: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      len: [6, 20]
    }
  },
  email: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      isEmail: true,
      len: [1]
    }
  }
});

authTable.methods.generateHash = function(password) {
  return bcrypt.hashSync(password, bcrypt.genSaltSync(10), null);
};

authTable.methods.validPassword = function(password) {
  return bcryptpareSync(password, this.local.password);
};

return authTable;
}

我希望这个去表加密口令的数据库中。

我收到的错误是:

类型错误:未定义无法设置属性“generateHash”。

类型错误:未定义无法设置属性“validPassword”

回答如下:

我得到一个错误,authTable未定义

不,你不知道。你得到一个错误,authTable.methods是不确定的。

define返回Model的一个实例,你可以在the documentation of Model看到,它不具有methods属性命名,ERGO,authTable.methods将评估为undefined

为什么加入。方法,就当我无功返回未定义?

我试图bycrypt添加到认证表,但我得到一个错误,authTable试图添加generateHash和validPassword方法时,是不确定的。是否有什么我不理解有关authTables.methods部分?

当我注释掉generateHash和validPassword部分,导致我相信。方法是挂断代码工作。

var bcrypt = require("bcryptjs");

module.exports = function (sequelize, DataTypes) {
  var authTable = sequelize.define("authTable", {

    username: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      len: [1, 30]
    }
  },
  password: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      len: [6, 20]
    }
  },
  email: {
    type: DataTypes.STRING,
    allowNull: false,
    validate: {
      isEmail: true,
      len: [1]
    }
  }
});

authTable.methods.generateHash = function(password) {
  return bcrypt.hashSync(password, bcrypt.genSaltSync(10), null);
};

authTable.methods.validPassword = function(password) {
  return bcryptpareSync(password, this.local.password);
};

return authTable;
}

我希望这个去表加密口令的数据库中。

我收到的错误是:

类型错误:未定义无法设置属性“generateHash”。

类型错误:未定义无法设置属性“validPassword”

回答如下:

我得到一个错误,authTable未定义

不,你不知道。你得到一个错误,authTable.methods是不确定的。

define返回Model的一个实例,你可以在the documentation of Model看到,它不具有methods属性命名,ERGO,authTable.methods将评估为undefined

发布评论

评论列表 (0)

  1. 暂无评论