typescript - 更好的 typescript 文件引用

标签 typescript

我是 TypeScript 的新手,正在尝试为我的 TypeScript 代码库设置一些单元测试。问题是我的代码依赖于其他人的工作,所有这些引用都是以硬编码相对路径的形式完成的,例如“......\somefile.d.ts”。进行单元测试时,我想伪造一些依赖项,但不知道如何让 TypeScript 使用我的伪造而不是硬编码的引用文件。

我的问题是:有没有办法不在源代码中硬编码引用路径? TypeScript 中是否有预处理器或宏之类的东西,或者我可以使用项目系统来帮助解决依赖关系,而不是在源代码中对它们进行硬编码?

最佳答案

查看 grunt-ts 引用文件生成:https://github.com/basarat/grunt-ts#reference-file-generation

你可以做的是有单独的目标,一个用于开发,一个用于测试:

    dev: {                          
        src: ["app/**/*.ts", "!app/**/*.spec.ts"], // Exclude your spec files 
        reference: "./app/reference.ts", 
        out: 'app/out.js',        
    },
    test: {                          
        src: ["app/**/*.ts"], // Include all files 
        reference: "./app/reference.ts", 
        out: 'app/out.js',        
    },

现在您只从所有文件中引用 app/reference.ts。当你想运行测试时,为测试构建,当你想要发布/开发时为开发构建。

另请查看此视频教程:http://www.youtube.com/watch?v=0-6vT7xgE4Y&hd=1

关于typescript - 更好的 typescript 文件引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18411554/

相关文章:

javascript - 访问组件内部的模板变量

javascript - Sweetalert 中的服务无法运行

image - ionic 3 : Print image using Bluetooth printer

angular - 如何创建对动态创建组件的引用?

angular - 如何在自定义组件宿主元素上使用自定义指令

javascript - 模块 'FormBuilder' 导入了意外值 'AppModule'。请添加@NgModule 注解

typescript - 无法解析模块 'module://graphql/language/parser.js'

javascript - 如何在 typescript 中使用 `super()`

javascript - 通过检查两个元素从数组中获取重复值

javascript - 如何在 *ngFor 中获取 *ngIf 的第一个真值