以下功能是可以的:
/**
 * Test
 * @param {{ aRandomKey: string, anotherKey  }} data
 */
function test(data) {
    console.log(data.aRandomKey);
}
这里data.aRandomKey被识别为有效参数。
现在问题出在以下几点:
/**
 * @param { string, function({{ pageId: string }} data) }
 */
socket.on('page:getSource', function (data) {
    //data = { pageId: id }
    console.log(data.pageId)
})
在这里,data.pageId未解决..@param语法也是错误的。
同样适用于:
socket.on('page:getSource',
    /**
    * @param {{ pageId: string }} data
    */
    function (data) {
        //data = { pageId: id }
        console.log(data.pageId)
    }
)
那么..我该如何处理这些情况?