我有一个monorepo:
- packages
- namespace-alpha
- namespace-bravo
- namespace-charlie
每个软件包中都有一个jsconfig.json
文件,如下所示:
{
"compilerOptions": {
"target": "es6",
"jsx": "preserve",
"module": "commonjs"
},
"include": ["src/**/*.js"],
"exclude": ["src/index.js"]
}
这是我能够确保每个模块建议通过软件包名称而不是通过相对路径(即import alpha from '@namespace-alpha'
而不是import alpha from '../../../namespace-alpha/es/src/index.js
进行导入的唯一方法。
此方法的问题在于,尽管导入建议可以正常工作,但它们不会被另一个软件包中的新导出更新。因此,如果我向@namespace/alpha
添加默认或命名导出,除非关闭并重新打开项目,否则不会看到该导入作为建议。
如果我使用相对路径(include
)将这些模块包含在jsconfig的../namespace-alpha/**/*.js
路径中,我将回到平方,并且导入建议将使用相对路径而不是包名称
将导出添加到monorepo中的一个软件包中时,如何使VSCode更新其导入建议?