2

npm ベースのプロジェクトで Shake を使用していますが、node_modulesフォルダーの処理方法に困惑しています。私が言えることから、フローは単純なはずです。

  • を変更すると、再入力package.jsonが発生します。node_modules
  • node_modulesand/orへのすべての変更main.tsにより、typescript 関連のスクリプトが起動します。この場合、変更のコレクション全体に対して 1 回だけ実行されます。

これらの依存関係をエンコードするにはどうすればよいですか?

4

1 に答える 1

1

問題はnode_modules、ファイルではなくディレクトリであり、ディレクトリに依存できないことです。解決策は、次の行に沿って偽のファイルを作成することです。

"node_modules/.stamp" %> \out -> do
    need ["package.json"]
    cmd_ "npm update"
    copyFile' "package.json" out

"main.ts.out" %> \out -> do
    need ["node_modules/.stamp","main.ts"]
    cmd_ "whatever"

上記の唯一の「奇妙な」ビットはcopyFile'package.jsonスタンプファイルの . これはトリックで、ファイルのハッシュ チェックを行うと.stampファイルが変更されますが、常に書き込み""を行っている場合は変更されません。

于 2018-05-01T07:57:31.013 に答える