4

nodemon で ts-node を使用しようとしています。どちらも糸を使用してインストールされ、私の package.json には次の構造があります。

{
  "name": "yarnTest",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "devDependencies": {
    "@types/express": "^4.0.36",
    "bootstrap-sass": "^3.3.7",
    "nodemon": "^1.11.0",
    "typescript": "^2.4.1"
  },
  "dependencies": {
    "@types/chalk": "^0.4.31",
    "chalk": "^2.0.1",
    "express": "^4.15.3",
    "ts-node": "^3.2.0"
  },
  "scripts": {
    "dev": "nodemon --exec 'ts-node --cache-directory .tscache' ./src/www.ts",
    "start": "ts-node --fast ./dist/www.ts"
  }
}

ここで、「yarn run dev」を使用すると、nodemon が実行され、nodemon は「ts-node」を実行しようとしますが、nodemon はコマンド「ts-node」が存在しないことを通知します。

Der Befehl "'ts-node" ist entweder falsch geschrieben oder konnte nicht gefunden werden.

Yarn はグローバルにインストールされていますが、ts-node は私のプロジェクトにのみインストールされています。私はすでに試しました:

  "scripts": {
    "dev": "nodemon --exec 'yarn run ts-node --cache-directory .tscache' ./src/www.ts",
    "start": "ts-node --fast ./dist/www.ts"
  }

しかし、これにより、「糸」が見つからないというエラーが表示されます:(この問題を修正する方法はありますか?

4

3 に答える 3

5

私はついに問題を解決しました!数時間後、nodemon が "'ts-node" (または "'yarn") を見つけることができないと言ったことがわかりました。アポストロフィは私を混乱させたので、最終的に package.json の両方のアポストロフィを " に置き換えました。これで、作業中のスクリプト コマンドは次のようになりました。

 "dev": "nodemon --exec \"ts-node --cache-directory .tscache\" ./src/www.ts"
于 2017-07-09T12:36:24.947 に答える
1

2020 Update

nodemon で typescript ファイルを実行しようとしていますがdev、package.json の次のスクリプトで十分です

{
    "dev": "nodemon src/index.ts"
}

dev スクリプトに ts-node を含める必要はありません。

依存関係に ts-node と nodemon があります

于 2020-05-27T03:05:32.643 に答える