编辑#1:似乎我有一个有效的配置,但是欢迎所有改善此建议。查看答案:https://stackoverflow.com/a/42269408/1155847

原始问题:

我目前正在尝试设置环境,以便使用package.jsondevDependencies typescript 版本。有哪些最佳实践,以便它是“编辑者不知道的”,并且最好用作npm脚本,例如:npm run tscompile

需要明确的是-使用npm install typescript -g时我可以使所有工作正常-但是我依赖的是全局安装的版本,不是我想要的版本-因为我们要团队合作并为特定的 typescript 版本设置升级前每个成员,因此我们都在同一页面上。

我目前正在尝试以这种方式进行设置-但npm然后提示它无法将“node_modules”识别为内部或外部命令...我想我确实也必须将tsconfig.json传递给tsc,或者至少给它一个“工作目录”-但是我什至无法从本地下载的npm缓存中启动tsc。

package.json

{
  "name": "tswithnodejsgettingstarted",
  "version": "1.0.0",
  "description": "",
  "main": "app/index.js",
  "scripts": {
    "start": "node app/index.js",
    "tscompile": "node_modules/typescript/tsc"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "typescript": "2.1.6"
  }
}

tsconfig.json
{
    "compileOnSave": true,
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "sourceMap": true,
        "outDir": "app"
    },
    "include": [
        "src/**/*.ts"
    ],
    "exclude": [
        "node_modules"
    ]
}

最佳答案

好吧...看起来就像这样简单(请参阅下文)。在这里回答,适合任何其他寻找答案的人。或者,如果有更好的解决方案,请告诉我
"tsc": "tsc"中配置类似package.json的脚本。然后只需运行npm run tsc,它将使用您在本地安装的tsc版本,当然会发现您的tsconfig.json。它不使用您的全局版本-正如我卸载了该全局版本-只是在命令行中输入tsc出错了。
例如。:
检查repo *我在哪里玩。
package.json

{
  "name": "tscnodejsgettingstarted",
  "version": "1.0.0",
  "description": "",
  "main": "app/index.js",
  "scripts": {
    "start": "npm run tsc && node app/index.js",
    "tsc": "tsc"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "typescript": "2.1.6"
  }
}

* repo :https://github.com/pluralsight-courses/typescript-fundamentals/tree/master/001-GettingStarted

关于node.js - 在package.json中配置本地Typescript编译器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42269301/

10-12 01:01