【问题标题】:es6 import absolute pathes6 导入绝对路径
【发布时间】:2018-07-30 18:49:46
【问题描述】:

我有一个 Angular 项目,我不会从这些项目中导入相同的“ts”文件。

为了这个目标,我不会创建一个他们两个项目都将导入的共享文件夹 此共享文件夹中的文件。

有没有办法做到这一点?

我尝试通过绝对地址导入文件,像这样:

import { Model } from 'D:/Projects/shared/service';

但它不起作用

我遵循了这些解决方案,但我发现这不是我想要的。 Refer a typescript file outside of project directory Files outside of project directory in angular2 seed project

还有其他方法吗?

非常感谢!

【问题讨论】:

标签: angular typescript


【解决方案1】:

这是一种设计上的打字稿限制。您需要在tsconfig.json 中更改您的rootDirs 才能访问文件; typescript 不会编译项目的 rootDir 之外的 typescript 文件。

或者,您应该构建共享库并将其输出添加到路径下的tsconfig.json。如果您打算单独发布 Shared,我会这样做。

【讨论】:

  • 我尝试使用 rootDir 但没有成功。你可以添加一个sn-p的代码吗?
  • 默认情况下,TypeScript 编译器假定项目的根目录与 tsconfig.json 的位置相同。您可以通过在 tsconfig 中指定 compilerOptions 属性的 rootDir 属性来指定新的根目录。
  • 你的意思是这样的:"rootDirs": ["D:/Projects/shared/" ] 而不是像这样导入: import { Model } from 'service';因为它不起作用
猜你喜欢
  • 1970-01-01
  • 2019-03-20
  • 2016-01-23
  • 1970-01-01
  • 2021-10-15
  • 1970-01-01
  • 2023-04-03
  • 1970-01-01
  • 2020-12-30
相关资源
最近更新 更多