VS 代码:"go to definition"无法处理导出的类



我不能在exported类的VS代码中使用"转到定义"功能,点击属性类型注释。以下是示例:

//Core.js
export default class Core { constructor() {} }
//Engine.js
export default class Engine{
/** @type {Core} core */
constructor(core) {
/** @type {Core} */            
this.core = core;
}
} 
//index.js
import Core from './Core';
import Engine from './Engine';
const core = new Core();
const engine = new Engine(core);

当我在Engine.js中,想要通过点击注释{Core}来转到类Core.js时,它不起作用。如果我使用"转到定义",VS代码会说:找不到"核心"的定义。

我做错了什么?这可能吗?谢谢

使用@typedef注释将类型"导入"到文件中,如下所示:

/** @typedef {import('./Core').default} Core */
export default class Engine{
/** @type {Core} core */
constructor(core) {
/** @type {Core} */            
this.core = core;
}
}

请向我们展示您的项目文件层次结构。很可能您没有从项目的根目录开始定义导入。

import Page from 'components/Page'; //1

import Page from './../components/Page'; //2

1对我不起作用,但2起作用。

最新更新