打字稿tsconfig设置输出一个文件?

时间:2019-12-12 01:37:08

标签: typescript tsconfig

说我有两个文件

  detectText(base64) {
    fetch("https://vision.googleapis.com/v1/images:annotate?key=" + GOOGLE_CLOUD_KEYFILE, {
        method: 'POST',
        body: JSON.stringify({
          "requests": [{
            "image": { "content": base64 },
            "features": [
                { type: "TEXT_DETECTION" }
            ]}]
      })
    })
    .then(response => { return response.json() }) 
    .then(jsonRes => {
      let text = jsonRes.responses[0].fullTextAnnotation.text
      this.props.navigation.navigate('ContactScreen', { text: text })
    }).catch(err => {
      console.log('Error', err)
    })
  }

//a.ts
export class A {
    public print() {
        console.log("A!");
    }
}

我将如何设置tsconfig以便将它们都输出到一个文件? 即有点像

//app.ts
import A from "./a";
new A().print();

我似乎无法使outfile正常工作,并且当我将模块设置为“ AMD”时,由于缺少“定义”而无法在浏览器中运行代码

我尝试过 Typescript compile to single file 但这似乎会生成定义相关的东西,而我只需要将自包含的代码压缩到一个文件中,就可以在没有require.js的情况下在浏览器中自行运行。谢谢!

1 个答案:

答案 0 :(得分:1)

类似的事情,虽然可能取决于模块设置,但不确定。

"compilerOptions": {
   "module": "none",
   "outFile": "Scripts/Output/MyOutputFile.js"
}, "exclude": [
   "Scripts/Output/MyOutputFile.d.ts",
   "obj/**/*"
]

为避免源文件排序出现问题,请确保使用引用路径语句来标识每个文件中的本地依赖项。否则,一个依赖文件可能会出现在依赖文件之前,从而导致意外的客户端错误。

/// <reference path="Folder/File.ts"/>

由于我没有遇到使Visual Studio TypeScript编译器正常工作的问题,因此我从命令行手动进行了编译。实际上,这导致使用MAKE以便在正确的顺序和正确的时间编译我所有的TypeScript项目。 MAKE非常复杂,所以我不确定是否建议您选择该路线。