Bis zum Wechsel zu Typescript hätte das peerjs-Repository wie jede andere NPM-Abhängigkeit verwendet werden können. Fügen Sie einfach die Abhängigkeit als „peerjs“ hinzu: „git+ https://github.com/peers/peerjs.git “ und sie wird in /node_modules/peerjs/dist/peer.js kompiliert.
Somit hätte eine Knotenanwendung, die die Abhängigkeit verwendet, sie leicht in eine Anwendung importieren und Peer verwenden können.
Mit dem Wechsel zu TS haben wir jedoch eine nicht erforderliche postinstall
Aufgabe, die die Verwendung in einem solchen Szenario mit einem Fehler unterbricht (versuchen Sie einfach, das aktuelle Repository als Abhängigkeit über git zu klonen und Sie werden wissen, was) Ich meine). Darüber hinaus hat es, selbst wenn wir das aktuelle peerjs-Repository abzweigen und postinstall
entfernen, immer noch keine Installations- oder Build-Aufgaben, die zur Erstellung der Datei "dist/peer.js" führen würden.
Mein Vorschlag ist also, diese Build-Aufgaben hinzuzufügen.
Eine Frage - Wie baue ich nun mit der aktuellen Repository-Konfiguration die peerjs-Bibliothek in dist/peer.js ein?
Danke.
@Caballerog
Selenium wurde aus der Postinstallation entfernt. Grunt-Aufgaben sollten gut funktionieren. Könntest du es mit der neuesten Version versuchen? 0,3.19
Um Ihre Frage zu beantworten, wird der Build immer noch mit grunt durchgeführt, er befindet sich in gruntfile.js. Die Hauptaufgabe ist ts (Typoskript). Danach folgen einige Minimierungsaufgaben.
Um zu bauen, müssen Sie nur grunt verwenden, der beste Weg ist npx grunt
.
@kidandcat
Entschuldigung für das erneute Öffnen eines geschlossenen Problems, aber ich kann PeerJS immer noch nicht als Modul verwenden ... Um zu reproduzieren:
yarn create react-app my-app
yarn add peerjs
src/App.js
und fügen Sie hinzu:import Peer from "peerjs";
// ...
class App extends Component {
componentDidMount() {
const peer = new Peer('peer-id', {});
}
// ...
}
yarn start
Wenn Sie zu http://localhost :3000 navigieren, erhalten Sie:
TypeError: peerjs__WEBPACK_IMPORTED_MODULE_9___default.a is not a constructor
Wie @xavierfuentes sagte ->
ng new app
npm install --save peerjs
import * as Peer from 'peerjs';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
title = 'app';
ngOnInit(): void {
new Peer('123', {})
}
}
ERROR TypeError: peerjs__WEBPACK_IMPORTED_MODULE_2__ is not a constructor
Entschuldigung für die Verzögerung, [email protected] sollte das Problem beheben
Dieses Problem ist noch nicht behoben, sorry.
Hilfreichster Kommentar
@kidandcat
Entschuldigung für das erneute Öffnen eines geschlossenen Problems, aber ich kann PeerJS immer noch nicht als Modul verwenden ... Um zu reproduzieren:
yarn create react-app my-app
yarn add peerjs
src/App.js
und fügen Sie hinzu:yarn start
Wenn Sie zu http://localhost :3000 navigieren, erhalten Sie:
TypeError: peerjs__WEBPACK_IMPORTED_MODULE_9___default.a is not a constructor