我对 VSCode 和 JSDocs 的体验很奇怪。
JSDocs 信息针对命名导出显示,但不针对使用 commonJS 导出方法的默认导出。
exports.default
文件:
index.js
/**
* Some explanation
*
* @param {object} obj The obj has to be~~~ !
* @returns {void}
*/
function fn (obj) {
// ...
}
exports.fn = fn;
exports.default = fn;
然后在另一个文件中:
import
导入import fn from './index'
fn // → no JSDoc info...
import { fn } from './index'
fn // → JSDoc info works
因此它适用于命名导入,但不适用于默认情况。
require()
导入let fn = require('./index')
fn // → no JSDoc info...
let fn = require('./index').fn
fn // → JSDoc info works
因此它适用于命名导入,但不适用于默认情况。
你应该使用:
import { default as fn } from "./exp";
我没有检查,但根据这个 GitHub 问题,该错误已被修复。