typescript - tsc: folosește versiunea din node_modules


Am TypeScript instalat global și dacă rulez tsc -v, afișează Version 2.0.3. De asemenea, am TypeScript ca dependență a proiectului meu, deci compilatorul este disponibil și ca MyProject/node_modules/.bin/tsc, care este versiunea 2.0.6.

Este posibil să configurezi tsc global să folosească versiunea locală dacă ești într-un proiect care are node_modules? tsc global ar deveni practic doar un lansator al tsc local.

Răspuns #1

Fac asta folosind grunt-exec, dar tiparul ar putea fi realizat în mai multe feluri. Acest cwd se mută în directorul lib și apoi execută comanda acolo.

Aceasta este sarcina mea grunt-exec, deși încerc să o fac acum cu better-npm-run.

"ts-dev": { cwd: 'node_modules/typescript/lib', cmd: "node tsc -p ../../../../../ -pretty"}

Iată cum am făcut asta în better-npm-run, vezi sarcina dev-compile.

      "scripts": {
    "build:dist": "better-npm-run build:dist",
    "build:prod": "better-npm-run build:prod",
    "dev-start": "bnr dev:start",
    "dev-compile": "bnr dev:compile"
  },
  "betterScripts": {
    "dev:start": "node ./serve https://opm-int.nane.netapp.com 9000",
    "dev:compile": "node ./node_modules/typescript/lib/tsc -p ../../../../../ -pretty"
  },

Răspunsul #2

Ai putea pur și simplu să rulezi ./node_modules/typescript/bin/tsc -v pentru a rula versiunea de node