WebStorm 中的 TypeScript AMD。烦人的 "Assigned Expression type"错误

标签 typescript amd webstorm

我正在 JetBrains WebStorm 中试用 TypeScript。

我在“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 编译成 javascript:

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

我还在 WebStorm 中为 TypeScript 设置了一个 FileWatcher。没关系。

但我收到了这个恼人的错误/警告:“分配的表达式类型 Person 不可分配给类型 exports.Person”

problem

有什么想法吗?难道我做错了什么?这是 WebStorm 中的错误吗?

这是我在 GitHub 上的项目:https://github.com/JulianG/typescript-modularization-demo/如果您想尝试一下。

最佳答案

此错误将在下一个 WebStorm 版本中修复,但与此同时您可以忽略该错误或将表达式组合成一行并查看类型推断是否有帮助:

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

关于WebStorm 中的 TypeScript AMD。烦人的 "Assigned Expression type"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16103364/

相关文章:

intellij-idea - 在 PhpStorm 中使用 CodeceptJS 的未解析函数或方法

intellij-idea - WebStorm 和 IntelliJ IDEA 在 NPM 运行/调试配置中看不到自定义 NPM 脚本

angular - 如何在 typescript (Angular + echarts)中访问 EChartsOption 类型的对象的属性?

javascript - 是否已经存在用于支持 Dojo AMD、NodeJS 要求和浏览器窗口的代码。[something] 用于 Javascript 微型库

javascript - 在 RequireJS 中的任何其他代码之前加载无 AMD 模块?

javascript - 使用 dojo AMD 加载条件模板 (html)

node.js - intellij idea 中的多个 ECMA-Script 版本

javascript - 从对象数组中仅选择特定属性

javascript - + 运算符覆盖而不是连接 Javascript 中的字符串

typescript 1.3 有时会给出错误的类型不匹配错误