Как я могу динамически импортировать одноранговую зависимость в файл, связанный с веб-пакетом? - PullRequest
0 голосов
/ 19 декабря 2018

Я работаю над плагином, который использует jQuery как одноранговую зависимость.Когда я пытаюсь импортировать этот плагин в мой основной проект (на котором уже установлен jQuery), я получаю сообщение об ошибке Module not found: Error: Can't resolve 'jquery' in <(plugin's folder)>.Кажется, что когда я пытаюсь динамически импортировать jQuery (одноранговая зависимость), веб-пакет при компиляции смотрит в папку node_modules плагина, а не в node_modules корневого проекта, даже если это зависимость от однорангового узла.Как я могу заставить веб-пакет выглядеть в корневом проекте node_modules, а не в плагине node_modules?

Webpack.config.js:

var webpack = require('webpack');

module.exports = {
    entry: './main.js',
    output: {
        filename: 'bundle.js'
    },
    plugins: [
        new webpack.ProvidePlugin({
            $: "jquery",  
            jQuery: "jquery" 
        })
    ],
    watch: true,
    resolve: {
        alias: { jquery: "jQuery" }
    }
};

1 Ответ

0 голосов
/ 19 декабря 2018

Я думаю, что нашел решение, добавив его в опцию resolve в конфигурации моего веб-пакета:

modules: [
            path.resolve('./node_modules'),
            path.resolve('../node_modules')
        ]

Редактировать: Проблема, казалось, полностью исчезла, когда я фактически импортировал проект из npm, тогда как раньшеЯ использовал ссылку npm.Вышеуказанное решение больше не требуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...