global.[[DB]].query TypeError: Cannot read property 'DB' of undefined
-
В общем ситуация такая
решил я что б один и тоже код не писать в разных проектах
скинуть его в свой собственный модуль
у меня там идет работа с базой и в разных проектах название этих баз разные к примеру у проекта 1 пусть будет db1 у проекта 2 db2
В каждом из этих проектов идет коннект со своей базой
проект 1const mysql = require("mysql2/promise"); global.db1 = mysql.createPool({ host: 'localhost', user: 'user', database: 'db1', password: "pass", waitForConnections: true, connectionLimit: 32, queueLimit: 0 });
проект 2
const mysql = require("mysql2/promise"); global.db2 = mysql.createPool({ host: 'localhost', user: 'user', database: 'db2', password: "pass", waitForConnections: true, connectionLimit: 32, queueLimit: 0 });
Так вот мне нужно как то иметь возможность из этого модуля обращаться к базе проекта к которому он подключен
Для этого я в функции модуля создал параметр который назвал db и нем указываю к какой базе в данном случае модуль должен подключаться
сам параметр в функцию модуля успешно передается
и далее в функции модуля которая должна получить из указанной базы я пытаюсь написатьawait global.[[DB]].query("SELECT * FROM table") .then(results =>{ }) .catch(function(err) { console.log(err.message); });
и вот тут то и всплывает эта ошибка
Cannot read property 'DB' of undefined
которая не дает мне получить имя базы так как я обращаюсь к переменной как имени свойства объекта
-
Написал вот так
global[''+[[DB]]+''].query
и заработало
-
@gomeapat said in global.[[DB]].query TypeError: Cannot read property 'DB' of undefined:
Написал вот так
global[''+[[DB]]+''].query
и заработало
global[ [[DB]] ].query