Peerjs: npm依存関係のようなリポジトリの使用をサポートします(たとえば、タスクをdist / peer.jsにコンパイルします)

作成日 2019年01月24日  ·  6コメント  ·  ソース: peers/peerjs

Typescriptに移行するまで、peerjsリポジトリは他のNPM依存関係と同じように使用できたはずです。 依存関係を「peerjs」:「git + https://github.com/peers/peerjs.git 」として追加するだけで、/ node_modules / peerjs / dist /peer.jsにコンパイルされます。

したがって、依存関係を使用しているノードアプリケーションは、依存関係をアプリケーションに簡単にインポートして、ピアを使用できます。

ただし、TSに移行すると、このようなシナリオでの使用をエラーで中断する不要なpostinstallタスクがあります(現在のリポジトリをgitを介して依存関係として複製してみてください。そうすれば、何がわかるでしょう。つまり)。 さらに、現在のpeerjsリポジトリをフォークしてpostinstallを削除しても、「dist /peer.js」ファイルの作成につながるインストールまたはビルドタスクはありません。

したがって、私の提案は、これらのビルドタスクを追加することです。
質問-現在のリポジトリ構成で、peerjsライブラリをdist / peer.jsにビルドするにはどうすればよいですか?
ありがとう。

最も参考になるコメント

@kidandcat
クローズされた問題を再開することをお詫びしますが、それでもPeerJSをモジュールとして使用することはできません...再現するには:

  • 新しいReactアプリを作成するyarn create react-app my-app
  • peerjs依存関係を追加yarn add peerjs
  • src/App.jsを編集し、以下を追加します。
import Peer from "peerjs";
// ...
class App extends Component {
  componentDidMount() {
    const peer = new Peer('peer-id', {});
  }
  // ...
}
  • アプリを実行するyarn start

http:// localhost :3000を参照すると、次のようになります。
TypeError: peerjs__WEBPACK_IMPORTED_MODULE_9___default.a is not a constructor

全てのコメント6件

@Caballerog

Seleniumはポストインストールから削除されました。 Gruntタスクは正常に機能するはずです。 最新バージョンでお試しいただけますか? 0.3.19

また、あなたの質問に答えるために、ビルドはまだgruntで行われ、gruntfile.jsにあります。 主なタスクはts(typescript)です。 その後、いくつかの縮小タスクがあります。

ビルドするには、gruntを使用する必要があります。最良の方法は、 npx gruntです。

@kidandcat
クローズされた問題を再開することをお詫びしますが、それでもPeerJSをモジュールとして使用することはできません...再現するには:

  • 新しいReactアプリを作成するyarn create react-app my-app
  • peerjs依存関係を追加yarn add peerjs
  • src/App.jsを編集し、以下を追加します。
import Peer from "peerjs";
// ...
class App extends Component {
  componentDidMount() {
    const peer = new Peer('peer-id', {});
  }
  // ...
}
  • アプリを実行するyarn start

http:// localhost :3000を参照すると、次のようになります。
TypeError: peerjs__WEBPACK_IMPORTED_MODULE_9___default.a is not a constructor

@xavierfuentesが言ったように->問題はまだ存在しています。 再現するには:

  • 新しいAngularアプリを作成するng new app
  • npm install --save peerjs
  • app.component.tsファイルを編集します。
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', {})

  }
}
  • npm start
    結果は次のようになります: ERROR TypeError: peerjs__WEBPACK_IMPORTED_MODULE_2__ is not a constructor

遅れて申し訳ありませんが、 peerjs @ 0.3.22で問題が修正されます

この問題はまだ解決されていません。申し訳ありません。

このページは役に立ちましたか?
0 / 5 - 0 評価