成功编译我的TypeScript项目后,我打算使用< code>ts-node在VS Code的调试模式下运行它。问题是,< code>ts-node找不到我创建的< code>d.ts文件(而< code>tsc对此没有问题)。
项目结构为:
/
conf/
dist/
src/
types/
package.json
tsconfig.json
< code>tsconfig.json相关条目有:
{
"compilerOptions": {
"target": "es2017",
"module": "commonjs",
// "lib": [],
"sourceMap": true,
"outDir": "dist",
"rootDir": "src",
"moduleResolution": "node",
"baseUrl": ".",
"paths": {
"*": [
"node_modules/*",
"src/types/*"
]
},
// "rootDirs": [],
// "typeRoots": [],
// "types": [],
},
"include": [
"src/**/*"
]
}
ts-node
找不到的定义文件是 src/types/global.d.ts
:
import { App } from '../App';
declare global {
namespace NodeJS {
interface Global {
app: App;
}
}
}
因此,尝试使用< code>ts-node运行它时,我看到:
TSError: ⨯ Unable to compile TypeScript:
src/boot.ts(15,59): error TS2339: Property 'app' does not exist on type 'Global'.
如何全球化解?我发现< code>///
我的TypeScript版本是3.0.1
TLDR
在tsconfig.json
中添加"ts节点":{"文件": true},
以使ts节点开发
按预期工作
解释:
我在package.json
中使用了ts-node-dev
,比如:
"scripts": {
"build": "tsc",
...
"dev": "ts-node-dev src/index.ts"
},
npm run build
工作正常,但npm run-dev
失败,我的类型定义文件位于
。
在我在我的tsconfig.json
中添加以下内容后,它开始正常工作
{
"ts-node": { "files": true }, // add this
"compilerOptions": {
...
}
}
从7.0.0中的ts-node开始,启动时不从< code>tsconfig.json加载文件。相反,您应该像这样指定< code> - files
ts-node --files src/boot.ts
我也遇到了类似的问题,但我无法添加--file
,因为我通过mocha
注册模块来运行ts-节点
(即mocha-r ts-节点/注册…
)。
我可以通过在< code>tsconfig.json中添加一个< code>files和一个< code>ts-node部分来解决这个问题,如下所示:
// tsconfig.json
{
"ts-node": {
"files": true
},
"files": [
"src/index.ts",
"src/global.d.ts"
],
"compilerOptions":{
//...
}
}
我有一个Visual Studio 2012 TypeScript项目。当我第一次制作项目时,我添加了 2 个新的 .ts 文件,这些文件是 Framework.ts 此时我不知所措。我看了看csproj文件: 然后是打字稿编译器的执行命令: 这确实也应该构建这些文件。我只是不知道为什么它拒绝。有谁知道如何解决这个问题?
我最近发现如果文件结尾是.I或.ii,gcc会跳过预处理,于是决定试试看。编译不包含stdio.h的hello world程序: 为什么不起作用? GCC版本6.3.0。
忽略编译器警告 格式 #pragma clang push #pragma clang diagnostic ignored "错误类型" // 存在警告的代码 #pragma clang pop > 1.在需要忽略的警告处右键 -- Reveal in Log 2.会给出警告的详细信息,其中包括警告的类型 3.高亮选中的便是这个警告的类型 4.在警告代码处增加如下代码 Command
我们试图从Jenkins构建一个maven工件并将其部署到我们的Nexus存储库管理器中,但是我们在构建过程中遇到了编译错误。这就是我们得到的错误! 错误]无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.5.1:在项目上编译(default-compile)studentapp:编译失败错误]此环境中没有提供编译器。您可能是在JRE上运
问题内容: 我编译的Go代码并未在Linux上以扩展名结尾。 有关在.gitignore文件中忽略这些提示的任何提示? 问题答案: 将您的构建产品与源代码分开。这有几个优点: 您可以同时启动同一代码的许多不同版本,而无需创建多个克隆 可以很容易确定自己确实做了一次清洁工作;将删除越野车将丢失的文件 您可以从源代码树的只读副本(例如CD-ROM)开始构建 您不太可能意外提交生成的文件 将清除您的源代
我正在尝试将生成的< code>thrift代码编译到我的源代码中。将< code>thrift内容生成到< code > CMAKE _ CURRENT _ BINARY _ DIR 中,然后我使用< code>SYSTEM关键字将生成的cpp文件添加到我的库中。当我试图编译它时,由于我的模块使用< code>-Wsuggest-override进行编译,它无法编译生成的cpp文件,因为< co