TypeScript AMD i WebStorm. Irriterande "Tilldelad uttryckstyp"-fel


Jag provar TypeScript i JetBrains WebStorm.

Jag har en mycket enkel klass i "person.ts":

export class Person {
  constructor(public name:string, public age:number) {
  }
    toString() {
    return this.name + ", " + this.age;
  }
}

Sedan, i min app.ts försöker jag importera det så här:

import nsp = module("person");

export class App {
    start() {
        var my_user:nsp.Person;
        my_user = new nsp.Person("Julian", 111);
        console.log( my_user.toString() );
    }
}

Det verkar fungera. Jag kan använda tsc för att kompilera till JavaScript:

tsc --module AMD .\public\script\app.ts

Och jag har också ställt in en FileWatcher för TypeScript i WebStorm. Det är bra.

Men jag får detta irriterande fel/varning: "Tilldelad uttryckstyp Person går inte att tilldela typ exports.Person"

Några idéer? Gör jag något fel? Är det här ett fel i WebStorm?

Här är mitt projekt på GitHub: https://github.com/JulianG/typescript-modularization-demo/ ifall du vill prova det.

Svar #1

Denna bugg är åtgärdad i nästa WebStorm-uppdatering, men under tiden kan du antingen ignorera felet eller kombinera uttrycket till en enda rad och se om typinferensen hjälper:

var my_user = new nsp.Person('Julian', 111);

Svar #2

Fixen kommer att inkluderas i nästa lilla release också (6.0.2). Troligen orsakades detta av WEB-7117.

Relaterade artiklar