我可以在大型项目中使用 namespace 之类的东西进行导入吗?
例如,代替
import {formatNumber} from '../../../utils/formatters'
我可以用
import {formatNumber} from utils.formatters
我认为它可以简化项目结构的 future 变化,当我四处移动一些组件并且不必寻找要更改的相对路径时。
我该如何解决这个问题?
最佳答案
when I move some components around and don't have to look for the relative paths to change
FWIW 对于 TypeScript 这将是一个编译错误(您可以使用路径补全 https://basarat.gitbooks.io/alm/content/features/autocomplete.html#path-completions 之类的东西轻松修复)所以您比使用纯 JavaScript 更好。
Can I use something like namespaces inside my large project for imports
没有。目前,它需要手动管理文件排序,这很快就会变成一种痛苦:https://github.com/TypeStrong/atom-typescript/blob/master/docs/out.md
更多
拥有相对 文件路径确实很痛苦。但这就是某些 JavaScript 模块系统的工作方式(尤其是 nodejs)。
关于javascript - 对于用 TypeScript 编写的项目,使用变量而不是具有相对路径的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37384376/