在Typescript

时间:2017-03-17 06:02:26

标签: angularjs typescript

我开始研究一个项目,其中前端部分用Typescript编写并使用AngularJS 1.x.项目非常庞大 - 在92个C#/ ASP.NET MVC项目的解决方案中分散了大约500个打字稿文件。

所有的Typescript代码都是使用内部的Typescript模块实现的:

/// <reference path="../folder1/file1.ts" />
/// <reference path="../folder2/file2.ts" />

module Product.Module1 {
   export class Class1 {
      // ...
   }
}

最终目标是迁移到Angular 2.这可能是一个错误的假设,但迁移路径的第一步是将当前的Typescript代码库从内部模块重构为外部模块。

正如您可能想象的那样,基于500个文件的Typescript应用程序中存在相当大的依赖图。尝试将上述示例转换为

class Class1 {
   // ...
}

export { Class1 };

引发多米诺骨牌效应,而依赖于此文件的内部模块不再显示Class1。在依赖模块中执行import { Class1 } from './samplefile'会使情况变得更糟,因为现在内部模块依赖于它们的松散感依赖。

我的问题是:
  - 有没有办法从内部模块迁移到外部模块    一步一步的时尚?   - 也许可以跳过对外部模块的重构?然后我不知道Angular 1.x和基于Angular 2.x的应用程序部分如何共享相同的代码/类型。

感谢任何想法

0 个答案:

没有答案