Ich versuche, ein Paket auf npm
() zu veröffentlichen, das ich unter Verwendung webpack
und babel
entwickle. Mein Code ist in ES6
geschrieben. Ich habe eine Datei in meinen Quellen, index.js
, dass (im Moment) exportiert eine meiner Bibliothek Kernkomponenten, es geht einfach so:Eine Bibliothek mit webpack und babel
import TheGamesDb from './scrapers/thegamesdb';
export { TheGamesDb };
Ich verwende webpack
und babel
ein dist index.js
zu schaffen, ist Hauptdatei meines Pakets. Mein webpack.config.js
geht so:
const webpack = require('webpack');
const nodeExternals = require('webpack-node-externals');
module.exports = {
entry: {
index: ['babel-polyfill', './src/index.js'],
development: ['babel-polyfill', './src/development.js']
},
output: {
path: '.',
filename: '[name].js',
library: 'rom-scraper',
libraryTarget: 'umd',
umdNamedDefine: true
},
devtool: 'source-map',
module: {
loaders: [
{ test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/ }
]
},
target: 'node',
externals: [nodeExternals()]
};
Nun, wenn ich mein Paket in einem anderen Projekt laden und versuchen, import
meinen Export TheGamesDb
einfach wie diese
import { TheGamesDb } from 'rom-scraper';
Ich erhalte den Fehler
Uncaught TypeError: Path must be a string. Received undefined
Es ist zu beachten, dass ich meine Bibliothek in electron
importiere.
Update: Electron scheint hier das Hauptproblem zu sein, und es ist nicht einmal meine Bibliothek, sondern eine Abhängigkeit, die diesen Fehler (nur in Electron) wirft