无法在Vs - windows中将.ts编译为.js

时间:2017-10-12 10:49:04

标签: javascript node.js typescript typescript-compiler-api

我是打字稿的新手,我想做的就是将我的打字稿文件转换为javascript 当我做npm typescript --verison时,我得到3.10.10

我有 task.json 这样的文件

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "${cwd}/node_modules/.bin/tsc.cmd",
    "isShellCommand": true,
    "args": [
        "-p",
        "."
    ],
    "showOutput": "silent",
    "problemMatcher": "$tsc"
}

tsconfig.json 这样的文件

{
  "compileOnSave": false,
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2016",
      "dom"
    ]
  }
}

当我做tsc mock.ts tsc时,我得到一个像这样的错误

  

'tsc'未被识别为可操作的内部或外部命令   程序或批处理文件。

经过博客的一些研究后,我在tasks.json文件中使用了这个

  

“command”:“$ {cwd} /node_modules/.bin/tsc.cmd”,   但我无法将我的.ts文件编译成javascript

1 个答案:

答案 0 :(得分:0)

一些有希望帮助的笔记

  • npm typescript --verison返回的是npm的版本,而不是TypeScript(3.1已经过时,因此您可能希望先更新npm i -g npm
  • 运行tsc的方式取决于您是全局安装(npm install typescript)还是本地安装(npm install --save-dev typescript)。

如果将一个脚本添加到package.json文件中,它应该处理为您定位typescript包,无论它是全局安装还是本地安装。例如:

package.json中的

... "scripts": { "tsc": "tsc" } ...

然后运行TypeScript编译器,如下所示:npm run tsc -- <your typescript options>。例如:npm run tsc -- --version应返回typescript的实际版本(或告诉您TypeScript未真正安装)。

如果您想进一步深入了解是否安装了TypeScript,还可以结帐npm ls