用打字稿导入文件的正确方法是什么?

时间:2019-04-25 12:33:07

标签: javascript reactjs typescript import

从历史上看,在导入javascript文件时,您将文件命名为index.js,然后像这样导入

import something from 'components/path/something',其中最后一个是包含index.js文件的目录

但是使用TS时,我收到一条错误消息:将文件名切换为index.ts

时,没有文件或目录 到目前为止,

2个解决方案import something from 'components/path/something/index.ts'

import something from 'components/path/something/something'

两者都不是忠实拥护者,是否有更好的方法呢?

1 个答案:

答案 0 :(得分:1)

没有正确的方法:

进口通常是相对的:

import whatever from '../another/folder/'; // will import index

您当然可以在tsconfig.json中调整此行为:

{
  ....
  "compilerOptions": {
    "baseUrl": "src",
    "paths": {
      "@services/*": ["services/*"],
      "@shared/*": ["shared/*"],
      "@models/*": ["models/*"],
    },
    ...
  }
}

为您提供“绝对项目路径”:

import WhateverService from '@services/WhateverService';

https://www.typescriptlang.org/docs/handbook/modules.html