Как получить доступ к DOM из веб-загрузчика

Я пишу загрузчик веб-пакетов для определенного расширения файла, и я хотел бы добавить пользовательский импорт в DOM

module.exports = function(source) {
    ...
    document.appendChild(myImport)

    return `export default 'hello'`;
}

но DOM не доступен

ReferenceError: документ не определен

Есть ли способ получить доступ к DOM из моего загрузчика?

Моя конфигурация веб-пакета:

const path = require('path')

module.exports = {
    ...
    module: {
        rules: [{
            test: /\.myextension$/,
            use: {
                loader: 'my-loader'
            }
        }]
    }
};

1 ответ

Решение

Нет, код из загрузчика будет запускаться в env node.js, который не имеет власти над dom (браузер env). Чтобы иметь возможность манипулировать dom, вы должны вывести код через загрузчик, который будет вставлен в файл такого типа, а затем при запуске в браузере он внесет изменения.

Что-то вроде:

module.exports = function(source) {
    return `export default function(){
        document.appendChild(myImport)
    }`;
}
Другие вопросы по тегам