0
我是ES6和TypeScript的新手。我們已經將一些代碼重構爲ES6,但我們嘗試瞭如果切換到TypeScript而不是更容易編寫更易維護的代碼。TypeScript中未識別的導出對象的類型
如果有以下的,簡化的ES6模塊config.js
export default {
logger: require('winston'),
somethingelse: 'text'
}
我到處導入此模塊在我的項目,如在app.js
:
import * as config from '../../../../config'
const logger = config.logger
...
據我瞭解,打字是可選在TypeScript和ES6代碼中應該運行良好,如果我只是將文件.js
重命名爲.ts
。如果這是我錯誤的假設,請糾正我。
/project/app.ts(7,23): Property 'logger' does not exist on type 'typeof \"/project/config\"'.
因此,這意味着,我有聲明一個類型:然而,當我編譯我得到這個錯誤?於是我繼續爲導出的對象聲明一個接口。
config.js
:
interface IConfig {
logger: any;
somethingelse: string;
}
const defaultConfig: IConfig = {
logger: winston,
text: 'text'
}
export default defaultConfig
但我仍然得到上面的編譯錯誤。