我不断收到以下错误:
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/