如何使用TypeScript和webpack实习?

时间:2017-04-28 11:22:43

标签: javascript typescript webpack intern

有可能吗? 当我尝试在我的测试中导入Intern时这样做:

import * as registerSuite from 'intern!object'

然后我运行webpack来转换我的* .ts测试,我收到以下错误:

  

TS2307:找不到模块'intern!object'。

我应该添加一些打字吗?我是TypeScript的新手,而webpack和Intern都无法理解我所缺少的东西。

2 个答案:

答案 0 :(得分:1)

是的,您需要在include的{​​{1}}部分中添加intern typings的引用,described in this tutorial

但这只会让你通过编译步骤。在运行时,您需要一个能够理解tsconfig.json之类的模块引用的加载器,并以实习生希望它们工作的方式处理它们。

我不知道webpack是否存在任何此类加载器或插件,我只能在intern repo中找到有关它的一个问题,而且似乎没有任何解决方案。

一般来说,Intern 3依赖于与实习生捆绑在一起的dojo loader。试图使用其他装载机的人是独立的,并没有出现常见的解决方案。

对于实习生4(这是一个重大更新但尚未发布),有一个计划'remove loader dependency from Intern',但我不知道是否会做某些具体的事情(或者甚至需要做什么) )支持webpack。

答案 1 :(得分:1)

实际上,这是可能的,正如Dylan Schiemann所说 - SitePen的首席执行官,制作实习生的公司(如果我没有记错的话):https://www.sitepen.com/blog/2015/03/24/testing-typescript-with-intern/#comment-3280004472

这个概念的证明是Dojo 2项目,它也是由SitePen制作的:https://github.com/dojo/widget-core/ 它是在TypeScript中编写的,并使用webpack和Intern进行测试。

但遗憾的是,还没有关于如何做到这一点的文档教程。

Dylan还说,在Intern(v4)的下一个版本中,内部Intern的加载器将被移除,因此,这个问题将消失,但是Intern 4目前处于pre-beta状态,但相对稳定。 / p>