ノード露光(輸出)とローディング規則(必要)規則

ノードノート

  • FSコアモジュールreadFileの、READDIR
  • HTTPコアモジュールcreateServer、聞く、上
  • パスurl.parseから削除URLコアモジュール
  • サーバー側のリダイレクト
//301是永久重定向 单向性
res.statusCode = 302 //临时重定向
res.setHeader('Location',path) //设置重定向的路径

5.露光ルール

  • モジュールは、各オブジェクトのモジュールを有しているように、それは理解することができます
  • const module={ exports:{} }そして、そこにモジュールがエクスポートオブジェクトで、そして最後にreturn module.exports、これは私たちが見ることができないノードの一番下にあります
  • これでファイルがmodule.exportsはを取得する、そのファイルが必要です
  • しかし、通常、私たちは、この文言を見ることができますexports.
  • しかし、我々はまた、通常、このような文言を使用することができるかexports.a = 'hello nodejs'、この場合ということexports是什么?
  • 実際には、声明もあるconst exports = module.exports繰り返しますが、これは基本的な実装であります
  • 別のケースではexports = 'hello nodejs'、最後のリターンは、輸出をmodule.exportsはされていないため、これは権利ではありません
module.exports = 'hello nodejs'
exports.foo = 'helle' //这样的话会报错因为module.exports已经被改成了一个字符串,不是一个对象了。

6.require雨水管ルール

  • 優先的には、キャッシュからロードされました
  • 6.1カーネルモジュールは、ノードがオープンソースであるため、彼らはまた、対応するファイルを持っていることを、ロードされたカーネル・モジュールであるので、これは、このようなURLは、httpのlibディレクトリにある、などのFS、としてこれらの文書のgithubのソース上で閲覧することができますrequire('fs) ....
  • 同様のパスではありません6.2サードパーティ製のモジュール我々は通常NPMパッケージ、言葉遣いやコアモジュールrequire('jquery') ......
  • このルールは、それはその後、デフォルトますnode_modulesは、このディレクトリを見つけるようにロードし、このディレクトリにjqueryのディレクトリを見つけ、このディレクトリ内のpackage.jsonの主な属性を見つけ、jQueryのjsのモジュールの記録のプロパティメインの入り口れますこのパッケージはロードされた、または実際のファイルをロードしています。
  • 全く何のpackage.jsonまたはメインパスが存在しない場合は、index.jsファイルは、デフォルトのファイル選択ではありませんが、ファイルが実行されない場合にはエラーになります。
  • !!! 重点 !!! 上記のすべてが成立しない場合は、このディレクトリnode_modulesに見つからないよう、「あなたが発見していない場合、それは缶をエラーになり、ディスクのルートディレクトリにクエリを知って調べ、このnode_modulesせずにディレクトリのデフォルトが存在しますtはモジュールxxxのを見つけます
  • 6.3ロードするために、独自のjsファイルを書くrequire('./index.js')、独自のJSファイルは、その後、パスが書き込まれていない場合は、取るためにパス上に書かれなければならないが、それはコアモジュールではなく、サードパーティ製のパッケージではありません、確かに文句を言うだろう。
公開された84元の記事 ウォンの賞賛204 ・は 10000 +を見て

おすすめ

転載: blog.csdn.net/qq_44983621/article/details/104394113