class RandomPlugin {
apply(compiler) {
compiler.hooks.emit.tapAsync(this.constructor.name, (compilation, callback) => {
const chunkList = [];
for (const chunk of compilation.chunks) {
// тут какая-нить фильтрация
chunkList.push(...chunk.files);
}
// тут запись в файл или ещё что
console.log(chunkList);
callback();
});
}
}
function
- свой this
, принимающий значение на момент вызова(если явно не указано обратного). Так как в данном случае функция async function (user) {
- это колбэк, this
у неё определяет вызывающая сторона, т.е. что-то в дебрях класса User
, который ничего сам не знает о вашем dg
.This SDK is intended for end-user client access from environments such as the Web, mobile Web (e.g. React Native, Ionic), Node.js desktop (e.g. Electron), or IoT devices running Node.js. If you are instead interested in using a Node.js SDK which grants you admin access from a privileged environment (like a server), you should use the Firebase Admin Node.js SDK.
The Firebase Admin Node.js SDK enables access to Firebase services from privileged environments (such as servers or cloud) in Node.js.
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
По сути это хак, т.к. основное предназначение этого заголовка - заставить всё работать через https, но если браузер не получает ответа по https порту - он разрешает работу по http. Может быть там вообще не использовать ни Вебпак ни Бабель
package.json
для точку входа указать не main
, а module
и дело с концом. Но а родительский проект тогда поймет, что этот импорт нужно будет дополнительно транспилировать? В нем то бабель используется...
exclude
, чтоб не лез в node_modules
. cli
- для этого есть специальные настройки(transpileDependencies
).