TypeScript AMD في WebStorm. خطأ مزعج "نوع التعبير المعين"


أحاول تجربة TypeScript في JetBrains WebStorm.

لدي فئة بسيطة جدًا في "person.ts":

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

ثم، في ملف app.ts الخاص بي أحاول استيراده بهذه الطريقة:

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() );
    }
}

يبدو أن هذا يعمل. يمكنني استخدام tsc للترجمة إلى جافاسكريبت:

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

وقد قمت أيضًا بإعداد مراقب ملفات لـ TypeScript في WebStorm. إنه على ما يرام.

لكني أتلقى هذا الخطأ/التحذير المزعج: "نوع التعبير المعين Person لا يمكن تعيينه إلى النوع exports.Person"

هل لديكم أي أفكار؟ هل أفعل شيئًا خاطئًا؟ هل هذه مشكلة في WebStorm؟

إليك مشروعي على GitHub: https://github.com/JulianG/typescript-modularization-demo/ في حال أردت تجربته.

الإجابة رقم 1

تم إصلاح هذا الخطأ في الإصدار القادم من WebStorm، ولكن في الوقت الحالي يمكنك إما تجاهل الخطأ أو دمج التعبير في سطر واحد ومعرفة ما إذا كانت استدلال الأنواع يساعد:

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

الإجابة رقم 2

سيتم تضمين الإصلاح في الإصدار الصغير التالي أيضًا (6.0.2). من المحتمل أن يكون هذا قد حدث بسبب WEB-7117.