AMD RequireJS @types TypeScript 2 Visual Studio 2015噩梦

时间:2017-03-22 01:04:19

标签: visual-studio-2015 amd typescript-typings umd typescript2.2

我被分配了一个任务来将我们的angularJs项目更新为TypeScript 2

我们目前使用requirejs(AMD)来填充库,然后使用

import 'angular'; import 'lodash';

这是一个ES6模块加载语法,据我所知。 我们声明一个主应用程序模块并在其中导入库,然后导入应用程序模块

import 'Application';

也是由requirejs给出的,我们在导入时会自动获取导入的所有Application列表。

我实际上将项目SUCCESSFULLY更新为TypeScript 2 !!!

但是,当我尝试使用@types包含TypeScript声明文件时会出现问题。

关于如何完成工作没有一个完整的参考资料!

******问题! ******

当我尝试使用@ types / lodash时,我在所有现有文件中丢失了_(lodash)的intellisense。

当我尝试

import * as _ from 'lodash';

然后我面临一个不同的错误:

Build:Module augmentation cannot introduce new names in the top level scope.

我的理解是.d.ts文件导出UMD模块。但是如何在Visual Studio 2015中引用@types?

请帮忙!谢谢。

1 个答案:

答案 0 :(得分:0)

requireJS不能正常处理UMD(通用模块加载)。所有@types库都是UMD库。

我们必须迁移到WebPack才能正确加载@types库。

最重要的是,我们离升级到Angular 5更近了一步,这是requireJS AMD无法访问的,因为它从一开始就以TypeScript编写为UMD。