我正在使用Protractor创建一个框架来测试Angular网页。我之所以使用TypeScript创建一个Page对象模型,只是因为它的语法对我来说比JavaScript更有意义。这更多的是一种偏好的东西。
当我运行我的自动化脚本时,我使用tsc命令将TypeScript中的所有内容转换为JavaScript,因为我的config文件遇到了错误。在运行tsc命令之后,我运行config.js文件,这将运行我的所有.js文件,包括页面对象文件和脚本文件。问题是Protractor在读取config文件后生成全局值-因此它会抱怨某些语法,比如import,因为JavaScript中没有使用这种语法。
除了与.ts文件位于同一目录中的所有额外.js和.js.map文件之外,使用Protractor编写框架来测试使用TypeScript而不使用JavaScript的Angular站点有什么缺点吗?毕竟,我使用的是在tsc命令之后生成的JavaScript文件。
发布于 2017-10-07 02:29:48
如果你想自己“把它放在一起”,而不是使用模块加载器,你可以用引用注释替换你的import语句,而不是:
import * as stuff from './stuff';您可以使用:
///<reference path="./stuff" />有些IDE甚至不需要它,因为它们假设所有的本地文件都在那里。
使用引用路径时,您不需要导入或导出-并且您可能希望部署一些名称空间,使其不在全局范围之外
话虽如此,你也可以使用一个模块加载器来代替--生活将会更加快乐。
https://stackoverflow.com/questions/46611027
复制相似问题