两个项目之间的跨项目引用

尼康

是否可以在两个TypeScript项目之间进行引用?假设我们具有以下项目结构:

结构

Module1.ts 包含:

module TestModule {
    export interface Interface1 {
    }
}

Module2.ts 包含:

module TestModule {
    export interface Interface2 extends Interface1 {
    }
}

Test1在中被引用Test2我得到一个错误Could not find symbol 'Interface1'Module2.ts它可以在一个项目中工作,但是我不知道如何从另一个项目中使它可见……也许现在还不可能。

[编辑1。]
当我尝试使用TestModule.Interface1模式时,出现相同的错误(用不同的方式表示)。但是,IntelliSense看到了我的Interface1

智能感知

[编辑2。]
我注意到我不能使用其他项目中的文件。即使我/// <reference ...添加了正确的参考()并链接了我的第一个项目中的所有文件。

戴维·谢雷

有很多方法可以做到这一点。

选项1-项目参考(TypeScript 3.0+)

如果您使用的是TypeScript 3.0,请查看使用项目引用。在这里阅读更多

选项2-构建脚本

使用诸如gulp-typescriptgrunt-ts之类的东西,或仅使用批处理脚本将文件复制到主项目的文件夹中。

或者,在Visual Studio中运行一个生成事件该事件会将文件复制到主项目中。

选项3-npm软件包

如果使用npm,则可以为其他项目创建一个包。然后,您可以在主项目中使用您的包。指定本地依赖关系是执行此操作或通过使用诸如sinopia(这是一个专用存储库服务器)之类的好方法我从未使用过它,但是看起来它会很好用。

选项4-NuGet软件包

您可以研究创建nuget软件包,然后在本地安装它

选项5---declaration --outDir编译器选项

您可以将--outDir编译器选项或目录中outDir属性设置为tsconfig.json其他项目,然后再对其进行编译,--declaration以便它也生成声明文件(.d.ts)。例如:--declaration --outDir ../Test1/External

原始答案(使用--out

如果右键单击库项目,然后单击属性,则可以在Visual Studio中执行类似的操作。TypeScript Build选项卡中,选中的选项,Combine JavaScript output into file然后在主项目中指定要执行的位置(例如$(SolutionDir)/TypedApp/External/TypedLibrary.js)。然后还要检查Generate declaration files以生成.d.ts文件。

设置项目以进行自动构建

一旦做到这一点,建立自己的图书馆项目,然后包括.js,并.d.ts在您的主项目。.js文件包含在html中,并.d.ts在打字稿文件中引用

在主项目中包含文件

每次重建库项目时,它将自动使用更改来更新主项目。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

两个项目之间的跨项目引用

来自分类Dev

在两个项目中引用

来自分类Dev

两个项目之间的参考

来自分类Dev

减少两个项目之间的重复

来自分类Dev

两个Django项目之间的依赖关系

来自分类Dev

Ember-在两个EAK项目之间共享代码

来自分类Dev

如何在两个项目之间共享代码?

来自分类Dev

AngularJS在两个选择列表之间移动项目

来自分类Dev

在两个ScalaJS SBT项目之间使用DependsOn

来自分类Dev

检索条件复杂的两个对象数组之间的项目

来自分类Dev

在两个C#项目之间使用#define

来自分类Dev

QTreeWidget使用拖放在两个项目之间插入

来自分类Dev

检查int是否在数组的两个项目之间

来自分类Dev

在两个项目之间同步单个C头文件

来自分类Dev

MSSQL:查找两个日期之间的所有项目

来自分类Dev

Xamarin表单-两个不同页面/项目之间的MessagingCenter

来自分类Dev

在两个Django项目之间同步身份验证

来自分类Dev

删除两个flexbox项目之间的空间

来自分类Dev

缓存中两个项目之间的缓存依赖关系

来自分类Dev

在两个项目之间同步单个C头文件

来自分类Dev

在两个列表之间移动可编辑项目?

来自分类Dev

计算两个值之间的项目数

来自分类Dev

Xamarin表单-两个不同页面/项目之间的MessagingCenter

来自分类Dev

在两个ScalaJS SBT项目之间使用DependsOn

来自分类Dev

如何找到两个 Java 项目之间的差异

来自分类Dev

在两个哈希表之间移动项目

来自分类Dev

CORS 在两个项目和用户之间通过 javascript

来自分类Dev

随机在两个列表之间划分项目

来自分类Dev

计算列表中两个项目之间的距离