Есть вот такой Firebase файл:
import * as firebase from "firebase/app";
import "firebase/auth";
import "firebase/database";
var firebaseConfig = {
apiKey: "smth",
authDomain: "smth",
databaseURL: "smth",
projectId: "smth",
storageBucket: "smth",
messagingSenderId: "smth",
appId: "smth"
};
firebase.initializeApp(firebaseConfig);
export let auth = firebase.auth();
export let database = firebase.database();
В чём заключается моя задумка: я хочу в один файл js импортировать auth, а в другой database.
Первый js файл выглядит так:
import { auth } from "./firebase.js";
//какой-то код, который работает
Второй вот так:
import { database } from "./firebase.js";
//какой-то код, который тоже работает
Но при этом, размер файла у них одинаковый и равен он 400кб. То есть складывается такое ощущение, что я импортирую в каждый из них все модули Firebase.
Вот конфиг webpack, если кому-то вдруг станет интересно:
const path = require("path");
module.exports = {
entry: {
auth: "./source/js/auth.js",
listRequests: "./source/js/listRequests.js",
},
output: {
filename: "[name].bundle.js",
path: path.resolve(__dirname, "source/js")
},
devServer: {
contentBase: path.join(__dirname, 'source/'),
port: 3000
}
}
Вот и вопрос, как импортировать только то, что мне нужно? Потому что даже когда я импортирую исключительно требуемую мне функцию, в JS файл залетает всё остальное, из-за чего размер JS файла становится ну несоизмеримо огромным.