Ich erstelle ein npm-Paket und Webpack für Loader wie Babel, Eslint usw. verwenden. Allerdings bin ich unter der Annahme, dass final kompilierte Version des Pakets sollte nur dieses eine Modul enthalten, ohne webpackBootstrap.Erstellen npm-Paket mit Webpack
Meine aktuelle package, webpack config and source. Ich habe es ausgezogen, um es einfach "arbeiten" zu lassen.
Schritte Ich habe zu prüfen, ob es funktioniert:
npm install
npm run build
npm install -g .
node
var test = require('test-package');
Resultierende in diesem Fehler:
Error: Cannot find module 'test-package'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at repl:1:12
at REPLServer.defaultEval (repl.js:248:27)
at bound (domain.js:280:14)
at REPLServer.runBound [as eval] (domain.js:293:12)
at REPLServer.<anonymous> (repl.js:412:12)
at emitOne (events.js:82:20)
Ich bin neu in webpack und npm so lassen Sie mich wissen, wenn Sie weitere Informationen benötigen, .
Während ich diese Änderungen hinzugefügt habe - das Paket funktioniert immer noch nicht. Ich habe die Frage mit einem Link zu abgespeckter Konfiguration/Quelle und Schritten aktualisiert, die ich nehme, um zu überprüfen, ob das Paket funktioniert/installierbar/verwendbar ist. –
Basierend auf Fehler würde ich sagen, es könnte etwas npm bezogen sein. Warum nicht 'npm link' verwenden? Übrigens habe ich diese Art von Problemen bei meiner [Boilerplate] (https://github.com/survivejs/react-component-boilerplate) sortiert. Es tut viel für Sie, wenn Sie Zeit haben, seine Ansätze zu studieren. –
Verwendung von npm Link war der Schlüssel .. Ich bin sehr neu in Javascript/nodejs, aber ich lerne schnell .. Wenn Sie Ihre Antwort mit dem npm Link Teil aktualisieren (zusätzlich zu den bereits bereitgestellten Konfigurationsinformationen), dann kann ich Ihre akzeptieren Antworten. Ich habe mir deinen Text angesehen. Es ist viel da, aber es sieht gut aus - ich werde es Schritt für Schritt durchgehen, nachdem ich mein erstes Paket fertiggestellt habe. –