繁体   English   中英

将Angular JavaScript模块导入TypeScript

[英]Import Angular JavaScript Modules into TypeScript

我有一堆用JavaScript编写的Angular模块,想将它们导入TypeScript。 我尝试使用导入和要求,但由于导入仅检查TypeScript模块,所以找不到我的角度模块。

import myModule= require('myModule');

还有其他方法可以代替在TypeScript中转换我的Js吗?

您不能直接使用来自TypeScript的angular.module('my', [])定义的模块。 这种表示法仅用于在内部angularJS对象内部注册模块。 从良好的代码前景出发,您必须将角度模块重新设计为TypeScript / CommonJS / AMD模块,然后在角度应用程序中重新使用它们。 但是您可以采用另一种方式:

  1. 创建一个隐藏的div元素。
  2. 在此div元素上引导要导入的角度模块。 这里是angularJS文档的链接 ,可能会有所帮助。
  3. 使用下一个代码段使用服务或在模块中注册的其他代码: angular.element(document.getElementById('myhiddendiv')).injector.invoke(function(YourService: any) { YouService.doDirtyJob(); })

但我建议选择第一个选项。

导入模块也会寻找JS文件...

import $Module = require("myModule");

这应该工作正常! 在TypeScript中,您用'$'调用模块,并按如下方式使用它:

$Module.createdWhateverFunctionYouMade(parameters);

在这种情况下,“ myModule”是Javascript文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM