![如何在VSC中快速找到TS函數的來源,而不需要手動通過node_modules?](https://rvso.com/image/1604804/%E5%A6%82%E4%BD%95%E5%9C%A8VSC%E4%B8%AD%E5%BF%AB%E9%80%9F%E6%89%BE%E5%88%B0TS%E5%87%BD%E6%95%B8%E7%9A%84%E4%BE%86%E6%BA%90%EF%BC%8C%E8%80%8C%E4%B8%8D%E9%9C%80%E8%A6%81%E6%89%8B%E5%8B%95%E9%80%9A%E9%81%8Enode_modules%EF%BC%9F.png)
我在 VSC 中挖掘第 3 方腳本時遇到問題。如何快速找到VSC中TS函數的來源?這是我的木偶片段的一部分:
await session.send('Animation.enable');
session.on('Animation.animationCreated', (event) => {
console.log(event);
});
await session.send('Animation.setPlaybackRate', {
playbackRate: 2,
});
如果我達到峰值的定義,on()
我會得到一個events.d.ts
文件,其中只有函數的“標頭”on(event: string | symbol, listener: (...args: any[]) => void): this;
但是實現在哪裡?如何在 VSC 中找到它?我想看看它還接受哪些其他字串參數。
看來字串「Animation.animationCreated」根本沒有出現在node_modules中。我跟著搜尋到https://github.com/ChromeDevTools/devtools-protocol並隨後到https://github.com/ChromeDevTools/devtools-protocol/blob/master/types/protocol-proxy-api.d.ts和https://github.com/ChromeDevTools/devtools-protocol/blob/master/types/protocol-mapping.d.ts這就是我現在陷入困境的地方。我不明白如何找到這些類型的實際實現。它們如何與瀏覽器準確連接?接下來我應該搜尋 chromium 原始碼嗎?