我正在开发一个 html5 游戏引擎,并且 - 同时 - 我正在使用这个引擎开发游戏。
两者都使用 ES6 编写并使用 webpack 进行转译。引擎和应用程序都在他们自己的目录中,有自己的 package.json。
我使用webpack构建引擎,然后使用npm link
在全局node_modules中添加一个指向引擎的链接,然后npm link engine
在app的目录中使用指向引擎开发目录。
这很好用,并且使用源映射我可以在引擎和应用程序中安装调试器并导航。
在 VSCode 中,我有一个工作区(我正在使用内部构建),其中包含两个目录:一个是引擎,另一个是应用程序。在引擎上工作时,我可以 cmd+单击任何方法,这将在引擎中打开正确的文件。应用程序也是如此。
但是,当我在使用引擎的应用程序目录中处理文件时,cmd+单击引擎中的某些方法将不起作用。有没有办法让它正常工作?我猜这是因为引擎的 package.js 中的 main 属性指的是(转译的)构建的 main,而不是主(webpack)ES6 应用程序入口点。我该怎么做才能使其按预期工作?