Estoy tratando de convertir el código js en código ts (y entiendo por qué se ha hecho algo).
Este es mi código JS
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.js')[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.database, config.username, config.password, config); } Object.keys(db).forEach(modelName => { if (db[modelName].associate) { db[modelName].associate(db); } }); db.sequelize = sequelize; db.Sequelize = Sequelize; module.exports = db;Aquí, hay múltiples sequalise
db.sequelize = sequelize; db.Sequelize = Sequelize;¿Alguien puede ayudarme a comprender el significado, el propósito y por qué existen ambos? y dónde usaríamos cada uno de ellos.
Puedo tener sentido para sequelize pero no para Sequelize . como si ya hubiéramos usado new Sequelize( entonces, ¿por qué lo agregaríamos en el objeto db?
Sequelize se refiere a la biblioteca en sí, mientras que sequelize se refiere a una instancia de Sequelize, que representa una conexión a una base de datos. Esta es la convención recomendada y también se sigue en toda la documentación oficial de Sequelize.
Entonces, por ejemplo, db.Sequelize.fn() está utilizando una función específica del módulo de secuenciación y db.sequelize.model.findAll() está utilizando una instancia de una conexión a una base de datos específica.