我正在嘗試generate Typescript definitions from the LibreOffice IDL(通過Doxygen生成的XML)。createInstance vs createInstanceWithArguments
XMultiServiceFactory interface有兩種創建實例的方法:createInstance
和createInstanceWithArguments
。然而,我似乎無法找到哪些類型需要參數,它們是什麼,應該用createInstanceWithArguments
實例化;以及哪些類型不需要參數,應該用createInstance
實例化。
能夠定義基於傳遞給該方法的字符串參數將使基於這些重載靜態類型重載:
// automatically typed as com.sun.star.frame.Desktop
let desktop = objServiceManager.createInstance('com.sun.star.frame.Desktop');
否則結果將必須顯式類型:
let desktop = objServiceManager.createInstance('com.sun.star.frame.Desktop')
as com.sun.star.frame.Desktop;
如何從文檔中知道給定類型是否需要參數,以及這些參數是什麼?
(LibreOffice的5.3.5/10的Windows 64位)
(最初發佈於ask.libreoffice,沒有答案。)