Typescript internal module not recognized by VS Code

前端 未结 2 575
鱼传尺愫
鱼传尺愫 2021-01-14 19:30

I am trying to separate my typescript classes in separate files using internal modules. However, the main.ts file will not load or recognize the sub modules.

相关标签:
2条回答
  • 2021-01-14 19:32

    To compile several .ts files into one big .js file using a VS Code task, you need to remove the 'args' from tasks.json and add the "out" argument to tsconfig.json

    tasks.json

    {
        "version": "0.1.0",
        "command": "tsc",
        "isShellCommand": true,
        "showOutput": "silent",
        "problemMatcher": "$tsc"
    }
    

    tsconfig.json

    {
        "compilerOptions": {
            "sourceMap":  true,
            "out": "myapp.js"
        }
    }
    

    Note: When input files are specified on the command line, tsconfig.json files are ignored.

    0 讨论(0)
  • 2021-01-14 19:48

    main.ts

    /// <reference path="car.ts" />
    var c = new Car("red");
    

    car.ts

    class Car {
        color: string;
        constructor(color: string) {
            this.color = color;
            console.log("created a new " + color + " car");
        }
    }
    

    tsconfig.json

    {
        "compilerOptions": {
            "sourceMap":  true, 
            "outFile": "main.js"
        },
        "files": [
            "main.ts",
            "car.ts"
        ]
    }
    

    tasks.json

    Kokodoko: I finally found the problem! You have to OMIT the "args" option inside "tasks.json", only then will the arguments in tsconfig.json be used! I found the answer here: github.com/Microsoft/typescript/wiki/tsconfig.json. It says: When input files are specified on the command line, tsconfig.json files are ignored


    For further information about Modules, don't forget to have a look at the TypeScript Handbook

    0 讨论(0)
提交回复
热议问题