인프런 커뮤니티 질문&답변

흐미부자얍님의 프로필 이미지

작성한 질문수

Vue로 Nodebird SNS 만들기

백엔드 서버에서 index.js 에러

21.01.27 19:18 작성

·

282

0

안녕하세요.

db.User = require('./user')(sequelize, Sequelize);

                           ^

해당 코드를 적용하니 에러가 납니다.

풀 코드는 아래 코드입니다. 

db.User = require('./user')(sequelize, Sequelize);

                           ^

TypeError: require(...) is not a function

에러명은 위와 같네요 ㅜ

'use strict';

const fs = require('fs');
const path = require('path');
const Sequelize = require('sequelize');
const basename = path.basename(__filename);
const env = process.env.NODE_ENV || 'development';
const config = require(__dirname + '/../config/config.json')[env];
const db = {};

let sequelize;
if (config.use_env_variable) {
  sequelize = new Sequelize(process.env[config.use_env_variable], config);
else {
  sequelize = new Sequelize(config.databaseconfig.usernameconfig.passwordconfig);
}


db.User = require('./user')(sequelizeSequelize);

fs
  .readdirSync(__dirname)
  .filter(file => {
    return (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js');
  })
  .forEach(file => {
    const model = require(path.join(__dirnamefile))(sequelizeSequelize.DataTypes);
    db[model.name] = model;
  });


Object.keys(db).forEach(modelName => {
  if (db[modelName].associate) {
    db[modelName].associate(db);
  }
});

db.sequelize = sequelize;
db.Sequelize = Sequelize;

module.exports = db;

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2021. 01. 27. 23:21

user.js쪽이 문제일겁니다. user.js에서도 module.exports 하셨나요?