上司のようなJavaScriptサブフォルダモジュールをインポートします.


プロジェクトに取り組んで、自分でこのようなコードを書くか?import { AddBank } from '../../../../pages/add-bank-account'プロジェクトが大きくなると、より多くのフォルダが作成され、深いファイルが入れ子になります.ファイルを見つけることは悪夢でありえます、そして、ファイルを輸入します.このようなファイルをインポートすることはいくつかの問題につながるかもしれません.

柔軟なコード


上の例から一目で、それをするのが苦痛のように見えないかもしれませんが、私たちのフォルダ構造変更を仮定しましょう、そして、我々はadd-bank-account.jspages/bank/add-bank-accountに移動します.インポートされたすべてのファイルでimport文を更新する必要があります.これは、プロジェクトにどれだけの人が働いているか、どのくらいの大きさであるかによって、問題につながることができます.

2 .メンタルモデルを構築するのは難しい。


コーディング中に、我々はより速く物事を思い出すのを助ける精神モデルを構築する.このインポート構造では、このファイルがどこに一目であるかを把握するのは難しいです.特に、プロジェクトの異なる部分で、同じ名前のadd-bank-account.jsを持つ複数のファイルを持っている場合.
この問題は、CodeBaseに新しい開発者に搭乗するときに明らかになります.これは、初心者のための痛みのアプリのフォルダの構造を把握し、どこに存在している.

より良い方法。


その代わりにそのような関数をインポートすることができればどうですか?import { AddBank } from '@project/pages/add-bank-account'ファイル構造を変更する場合は、これをimport { AddBank } from '@project/pages/bank/add-bank-account'あなたは、これが非常によりきれいであると私に同意します、そして、我々は最初のアプローチに関連した問題を持っていません.

準備ができて上司に?


ノードとNPMの背後にある美しい頭脳のおかげで、ノードモジュールとしてフォルダをインストールすることができます.これは、我々の解決を含む面白いユースケースを考慮に入れます.問題
3、2、1のボス
  • 私たちのケースpackage.jsonにアクセスするフォルダに/pagesを作成します
  • {
    "name" : "@project/pages",
    "version" : "0.0.1",
    "main": "index.js"
    }
    
  • npm install -S ./pages 24679182を実行することによって、フォルダを依存関係としてインストールします
  • フォルダをルートpackage.jsonの依存関係に追加する必要があります
  • {
      "name": "boss-subfolder-import",
      "version": "1.0.0",
      "description": "Boss subfolder import",
      "main": "index.js",
      "scripts": {
        "start": "node index.js"
      },
      "author": "[email protected]",
      "license": "ISC",
      "dependencies": {
        "@project/pages": "file:pages",
        "express": "^4.17.1"
      }
    }
    

    閉じるこの動画はお気に入りから削除されています.
    あなたがそれに同意するかどうかに関係なく、あなたが以下のコメントでこのアプローチについてどう思うかについて知らせてください.