1

私が理解しているように、ほとんどすべての NPM パッケージ (つまり、npmjs.org にリストされているもの) は、Require.js などのローダーを使用して、ブラウザー内でチャームのように機能します。ただし、NPM パッケージの一部の機能 (OS ファイルシステムへのアクセスなど) はブラウザー内で使用できないことは明らかであり、これを試みた場合、不適切なエラーが発生すると思われます。

  1. 私の理解はどれほど正しいですか?
  2. NPM パッケージ内のどのメソッドがブラウザーで機能し、どのメソッドが機能しないかを正確に見つける方法はありますか?
4

2 に答える 2

1

実際、Browserifyのようなものを使用する場合、ほぼすべてのパッケージをほとんど問題なく要求できると思います... Browserify docs によると:

IO を行わない多くの npm モジュールは、ブラウザ化された後に機能します。他の人はもっと手間がかかります。

多くのノード組み込みモジュールは、ブラウザーで動作するようにラップされていますが、明示的に require() するか、それらの機能を使用する場合のみです。

ただし、私はBrowserify の経験がないので、それを保証することはできません。しかし、それはどのアプリでも追加のレイヤーになると確信できます。「それは必要ですか?」そんな時に問われるはずです。

私は npm で Node.js パッケージのみを管理することを好む男なので、この方法でブラウザーでそれらを使用しようとすることに反対です。
ほとんどのブラウザー互換パッケージは、そのような目的でテストされたときにユーザーに通知します (テストされていないパッケージは使用する価値がありません! mwahahah! )。

于 2013-08-07T04:30:53.303 に答える