Disons qu'il y a un paquet dans node_modules
appelé foo et je souhaite importer un module dans une bibliothèque telle que foo/module
via webpack & babel ...
import Foo from 'foo';
travaux
import SomeOtherModule from 'foo/module';
échoue avec ce qui suit:
Module introuvable: Erreur: impossible de résoudre le module 'foo/module' dans/Users/x/Desktop/someproject/js
Ce qui donne l'impression que webpack recherche le fichier au mauvais endroit au lieu de node_modules
Mon webpack.config ressemble à ceci:
var webpack = require('webpack');
var path = require('path');
module.exports = {
entry: ['babel-polyfill','./js/script.js'],
output: {
path: __dirname,
filename: './build/script.js'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel',
query: {
cacheDirectory: true,
presets: ['es2015']
}
}
],
},
plugins: [
new webpack.NoErrorsPlugin()
],
stats: {
colors: true
},
devtool: 'source-map'
};
Cela devrait fonctionner avec import 'foo/module';
. Il résoudra le fichier ./node_modules/foo/module.js
ou ./node_modules/foo/module/index.js
et pas quelque chose comme ./node_modules/foo/node_modules/module/index.js
si cela était prévu (dans ce cas, il vaut mieux installer le module via npm).