这让我发疯。如何让打字稿正确编译导入的模块?我的 main.ts 也是import { AddListeners } from './listeners';一个 .ts 文件,export function AddListeners()但是当编译为 main.js 时,这一行不会改变,节点会抛出此错误:
错误 [ERR_MODULE_NOT_FOUND]:找不到从 C:\Users\bugbe\Documents\VSCode\tricorder\dist\main.js 导入的模块“C:\Users\bugbe\Documents\VSCode\tricorder\dist\listeners”
这是我的 tsconfig.json:
{
"compilerOptions": {
"esModuleInterop": true,
"outDir": "dist",
"module": "es2020",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2020",
"typeRoots": [
"node_modules/@types"
],
"baseUrl": "./",
"paths": {
"*":[
"node_modules/"
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
因此导入模块的代码无法正确编译,因为要工作它应该看起来像import { AddListeners } from './listeners.js';
C# 编译器是否识别继承的属性类以检查它们是否包含“属性”一词?在下面的示例中,[Blah]、[BlahA] 和 [BlahAttribute] 是可用属性
[AttributeUsage(AttributeTargets.Method, AllowMultiple=true)]
public class BlahA: Attribute
{
//stuff
}
[AttributeUsage(AttributeTargets.Method, AllowMultiple=true)]
public class BlahAttribute: Attribute
{
//stuff
}
//acceptable
[BlahA]
[Blah]
[BlahAttribute]
Run Code Online (Sandbox Code Playgroud)