javascript - typescript的導(dǎo)入已經(jīng)創(chuàng)建實(shí)例
問(wèn)題描述
剛學(xué)TS,在寫(xiě)測(cè)試代碼的時(shí)候,在我需要?jiǎng)?chuàng)建實(shí)例的時(shí)候:出現(xiàn)如下問(wèn)題,有些模糊
功能模塊具體實(shí)現(xiàn)類(lèi)部分如下
問(wèn)題解答
回答1:18,19是類(lèi)型定義,你的測(cè)試代碼中壓根沒(méi)有必須再去構(gòu)造這么一個(gè)類(lèi)型,只需要在實(shí)例 alarm 時(shí)傳遞一個(gè)正確的參數(shù)(而參數(shù)的類(lèi)型就是18,19的定義,按該定義要求傳參)就行了。
回答2:getAlarmConfig和alarmOutput是兩個(gè)類(lèi)型的定義,可以理解為函數(shù)簽名,并不是具體實(shí)現(xiàn), 而你在18和19行要做的應(yīng)該是對(duì)這兩個(gè)類(lèi)型的實(shí)現(xiàn), 只要符合簽名,怎么實(shí)現(xiàn)都可以,
比如
const alarmOutput: alarmOutput = (msg) => {}const getAlarmConfig: getAlarmConfig = (id) => new Promise((resolve) => resolve([]));
PS:實(shí)現(xiàn)對(duì)象的命名最好不要和類(lèi)型定義同名吧
相關(guān)文章:
1. 如何設(shè)置一個(gè)無(wú)限循環(huán)并打破它。(Java線程)2. 網(wǎng)頁(yè)爬蟲(chóng) - 如何使用使用java抓取信息并制作一個(gè)排名系統(tǒng)?3. mysql - 在log日志中已知用戶(hù)的某一步操作,如何獲取其上一步操作?4. php對(duì)mysql提取數(shù)據(jù)那種速度更快5. shell - mysql更新錯(cuò)誤6. javascript - sublime快鍵鍵問(wèn)題7. javascript - immutable配合react提升性能?8. python小白 自學(xué)看書(shū)遇到看不懂的地方9. macos - 如何徹底刪除mac自帶的apache和php10. DADB.class.php文件的代碼怎么寫(xiě)

網(wǎng)公網(wǎng)安備