問題タブ [node-modules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - libyaml モジュールをロードするときの「無効な ELF ヘッダー」エラー
ノードに入って libyaml を要求しようとすると、次のようになります。
と を使用node version 0.8.12
してlibyaml version 0.2.1
います。不思議なことに、エラーはサーバーに依存しますが、同じバージョンのボックスの 1 つで問題なく動作するため、バージョン番号に基づいているようには見えません。
node.js - nodejsモジュールがルートディレクトリ外の変数を参照しても安全ですか?
nodejs applicationfoobar-base
があり、別のアプリケーション ( foobar-baz
) を作成したとします。これは、次の「モジュール」にすることを意図していますfoobar-base
。
foobar-baz
で定義したクラスにメソッドが依存している場合、それは悪い習慣foobar-base
ですか?
あれは:
foobar-base/node_modules/foobar-baz/index.js
それを行うことは可能ですが、次の方法でモジュールをテストしている場合npm link
:
その後、少なくとも私のマシンでは を指しているため、require
呼び出しは失敗します。しかし、理論的には、npm に公開すると、require は機能します。../../
/usr/lib/node_modules/
したがって、この種の予期しない (まだ理解可能な) 動作は、この一連の行動に従うことを検討しないように十分な危険信号を投げかけています。
代わりに、「グローバル化」しましたmyClass
:
foobar-base/node_modules/foobar-baz/index.js
foobar-base/index.js
...しかし、「グローバルは悪い」...では、どうすればよいでしょうか?
javascript - 最初に関数をエクスポートし、次にオブジェクトをエクスポートします
カスタム モジュールがあり、 first で初期化するメソッドを提供したいのですがrequire
、後続の require でオブジェクトを直接返します。
ただし、モジュールは最初に要求されたときにキャッシュされるため、後続の要求は直接返すのではinit
なく、関数を返す必要がありobj
ます。
サーバー.js:
other.js:
モジュール.js:
どうすればその問題を回避できますか? それとも、それを達成するための確立されたパターンはありますか?
しかし、私はobj
キャッシュを保持init
したいと考えていますrequire
。
javascript - ノード JS CLI + ノード ライブラリ
私は、それを操作するための CLI を含むノード ライブラリの作成に取り組んでいます。
完全な (しかし長くはない) コードはhttps://github.com/claydiffrient/reltoabsにあります。
私はこれを積極的に開発しているので、npm link
開発中に作業するために を使用しています。
困った部分はcli.js
ファイルにあるようです。ノードを介してモジュールを含めるvar reltoabs = require('reltoabs')
と、モジュールが存在しないというエラーが返されますreltoabs
が、それは node_modules にあります。どうすればこれを機能させることができますか?
node.js - Windows に cloud9 をインストールする方法
Windowsにcloud9をインストールするために、このリンク「https://github.com/ajaxorg/cloud9#installation-on-windows-experimental 」をたどっていましたが、「node server.js [args]」でエラーが発生しました。正確にエラーが発生するのは、モジュールが見つからないことです。この問題について誰か助けてください。
ありがとう、プラディープ