首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >角度2模块出口服务

角度2模块出口服务
EN

Stack Overflow用户
提问于 2017-06-20 20:15:45
回答 1查看 2.2K关注 0票数 0

我有这样一个目录结构:

代码语言:javascript
运行
复制
 app 
  |- core
  |   |_identity
  |   |    |_identity.service.ts
  |   |_ http
  |        |_apiClient.service.ts (service for interacting with my api)
  |-user
  |   |- models
  |   |    |-user.ts
  |   |- services
  |   |     | - user.service.ts
  |   |-listComponent
  |
  |-tenant
      |-models
      |   |-tenant.ts
      |- services
           |- tenant.service.ts
      ....

我的tenant.service和user.service都注入了我的ApiClient对象(扩展了http服务)。问题是,要引用它,我必须补充

import {ApiClient} from '../../../core/http/apiClient.service'

在我所有想注入它的组件中。我已经定义了一个core.module (并导入到我的app.module中),并且希望能够引用我的ApiClient,而不必知道目录结构(也就是说,我希望能够像使用import {ApiClient} from '@core/http'的http服务那样导入它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-20 20:26:13

这就是模块解析在打字稿中的工作方式。

TypeScript将模仿Node.js运行时解析策略,以便在编译时定位模块的定义文件。

阅读更多关于它的这里

您可以为您的公共功能创建一个角库,并使用package.json安装它,以便与其他库一样,公共模块位于node_modules文件夹中。然后,您可以很容易地使用所有导出的类型,而不知道目录路径,

代码语言:javascript
运行
复制
 import { ApiClient } from 'MyLib';

希望这能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44662246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档