javascript - Visual Studio 2015 NodeJS/Typescript 覆盖 Node 启动文件

标签 javascript node.js compiler-errors typescript visual-studio-2015

我不断收到以下错误:

Error Code: TS5055  
Cannot write file C:/project/dir/server.js' because it would overwrite input file.
Project: TypeScript/JavaScript Virtual Projects

我什至尝试将我的入口文件名更改为 nodeserver.js,过了一会儿我得到了同样的错误:

Error Code: TS5055  
Cannot write file C:/project/dir/nodeserver.js' because it would overwrite input file.
Project: TypeScript/JavaScript Virtual Projects

我如何找出哪个组件试图覆盖它?

我确实注意到该文件的 BuildAction 设置为 Compile 并且“Publish”设置为 true。这可能是原因吗?关闭 .js 文件的 Compile 意味着什么?我不会得到任何错误检查吗?

配置文件

我的 tsconfig.json

{
  "compileOnSave": true,
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "moduleResolution": "node",
    "isolatedModules": false,
    "jsx": "react"
  },
  "exclude": [
    "node_modules",
    "public",
    "server.js",
    "Scripts/typings/main",
    "Scripts/typings/main.d.ts"
  ],
  "filesGlob": [
    "./src/**/*.ts",
    "./src/**/*.tsx"
  ]
}

我的包.json

{
  "name": "contract-vs-paye-calc-type-script",
  "version": "0.0.0",
  "description": "ContractVsPayeCalcTypeScript",
  "scripts": {
    "start": "node nodeserver.js",
    "lint": "eslint src"
  },
  "main": "/src/App.js",
  "author": {
    "name": "MC",
    "email": "admin@admin.com"
  },
  "dependencies": {
    "babel-core": "^6.7.7",
    "babel-loader": "^6.2.4",
    "express": "3.4.4",
    "jade": "*",
    "react": "^15.0.1",
    "react-dom": "^15.0.1",
    "react-hot-loader": "^1.3.0",
    "stylus": "*",
    "webpack": "^1.13.0",
    "webpack-dev-server": "^1.14.1"
  },
  "module": {
    "loaders": [
      {
        "test": "/\\.ts(x?)$/",
        "loader": "babel-loader!ts-loader"
      }
    ]
  }
}

最佳答案

似乎 typescript 编译器试图转译所有内容,包括已经是 javascript 的文件。解决方案是向 compilerOptions 添加一个新字段 outDir,因此它看起来像这样:

{
    ...
    "compilerOptions": {
        ...
        "outDir": "generated"
    }
    ...
}

关于javascript - Visual Studio 2015 NodeJS/Typescript 覆盖 Node 启动文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36792151/

相关文章:

javascript - 调整 ES2015 Map 以支持所需的行为

node.js - 为什么我在上网几个小时后收到 503 错误? Node/ express

c++ - C++模板泛型(模板参数列表)

c - 错误 : expected declaration specifiers or '...' before XXX (all kinds of parameters)

javascript - 如何正确使用数组和循环

javascript - Coffee Script 不会在页面更改时触发,但会在页面加载时起作用。 [ rails 5]

javascript - 无法让 "disallowSpacesInsideParentheses"工作

node.js - 使用 jade 和 wysiwyg markdown 允许用户编辑内容

node.js - 错误: Cannot find module 'connect-multiparty'

mysql - 将外键添加到现有列时出错