Свернуть: полностью игнорировать модули - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь создать библиотеку, которая работает как в браузере, так и в Node.js, с небольшими отличиями.Например, запрос должен быть выполнен с использованием встроенного браузера XMLHttpRequest, & request-promise на узле.Таким образом, я бы хотел, чтобы свертка к полностью игнорировала все операторы импорта для request-promise, потому что проверки выполняются в моей библиотеке в зависимости от среды (браузера или узла) для переключения с одного поведения на другое.

Я пробовал много способов:

module.exports = {
    external: ['request-promise'],
}

// OR
const ignore = require( 'rollup-plugin-ignore' ); 
module.exports = {
    plugins: [
        ignore('request-promise'),
    ],
}

// OR
const hypothetical = require( 'rollup-plugin-hypothetical' ); 
module.exports = {
    hypothetical({ 
        files: { 
          './node_modules/request-promise/lib/rp.js': `export default null;` 
        }, 
        allowFallthrough: true, 
    }),
}

Ничего не работает ... Я всегда получаю в результате заявление с требованием или прямое включение модуля в свой вывод.

Так, да, я борюсь с этим, и я молюсь за некоторую помощь.Я не очень хорошо разбираюсь в модульных системах или в самой сборке, так что кто-нибудь знает, как просто заменить модуль request-promise чем-нибудь, даже null?

Приветствия!

...