// tsconfig.json { "compilerOptions": { "target": "esnext", "module": "esnext", "moduleResolution": "node", "lib": ["dom", "es2018"], "allowSyntheticDefaultImports": true, "noImplicitAny": true, "noUnusedLocals": true, "removeComments": true, "resolveJsonModule": true, "strict": true, "typeRoots": ["node_modules/@types"] }, "exclude": ["node_modules"], "include": ["src/**/*.ts"] }
然后更改下之前创建的js文件扩展名
// information-logger.ts import os from 'os'; import { name, version } from '../package.json'; export class InformationLogger { static logApplicationInformation(): void { console.log({ application: { name, version, }, }); } static logSystemInformation(): void { console.log({ system: { platform: process.platform, cpus: os.cpus().length, }, }); } } // main.ts import { InformationLogger } from './information-logger'; InformationLogger.logApplicationInformation(); InformationLogger.logSystemInformation();
现在目录结构应该是这样的
总结
我们可以使用多种方式来创建TypeScript的Nodejs应用,不必拘泥于这一种,而且可能会有人并不赞同,因为TypeScript比纯Javascript更需要花费更多精力,不过在新项目中,你仍然可以尝试这种方式,如果你有什么好的建议,欢迎在评论区留下你的意见!