Visual studio 2013 visual studio中对象属性的Typescript intellisense未显示
在我的typescript文件中,我有以下代码:Visual studio 2013 visual studio中对象属性的Typescript intellisense未显示,visual-studio-2013,typescript,intellisense,Visual Studio 2013,Typescript,Intellisense,在我的typescript文件中,我有以下代码: var Application = Application || {}; Application.Constants = angular.module("application.constants", []); Application.Services = angular.module("application.services", []); Application.Controllers = angular.module("applicati
var Application = Application || {};
Application.Constants = angular.module("application.constants", []);
Application.Services = angular.module("application.services", []);
Application.Controllers = angular.module("application.controllers", []);
Application.Filters = angular.module("application.filters", []);
Application.Directives = angular.module("application.directives", []);
angular.module("application", ["application.filters", "application.services", "application.directives", "application.constants", "application.controllers"]);
var player = {};
player.intelligence = 10;
player.wisdom = 30;
if(desiredClass === "Barbarian") {
player.strenght = 100;
} else {
player.strength = 20;
}
Intellisense没有出现,如您所见:
但在实际生成的javascript中,这是相同的。。。我从visual studio获得了intellisense,正如您所看到的:
VisualStudioTypeScript有什么原因不能解决这个问题吗
我真的必须像这样创建自己的类型才能获得对象属性的intellisense吗
TypeScript不会从赋值推断类型。想一想为什么,考虑下面的代码:
var Application = Application || {};
Application.Constants = angular.module("application.constants", []);
Application.Services = angular.module("application.services", []);
Application.Controllers = angular.module("application.controllers", []);
Application.Filters = angular.module("application.filters", []);
Application.Directives = angular.module("application.directives", []);
angular.module("application", ["application.filters", "application.services", "application.directives", "application.constants", "application.controllers"]);
var player = {};
player.intelligence = 10;
player.wisdom = 30;
if(desiredClass === "Barbarian") {
player.strenght = 100;
} else {
player.strength = 20;
}
尽管它是程序中最常见的打字错误之一,但此处无法发出错误。TypeScript不会从赋值推断类型。想一想为什么,考虑下面的代码:
var Application = Application || {};
Application.Constants = angular.module("application.constants", []);
Application.Services = angular.module("application.services", []);
Application.Controllers = angular.module("application.controllers", []);
Application.Filters = angular.module("application.filters", []);
Application.Directives = angular.module("application.directives", []);
angular.module("application", ["application.filters", "application.services", "application.directives", "application.constants", "application.controllers"]);
var player = {};
player.intelligence = 10;
player.wisdom = 30;
if(desiredClass === "Barbarian") {
player.strenght = 100;
} else {
player.strength = 20;
}
尽管这是程序中最常见的打字错误之一,但在这里无法发出错误。因此,我在上一张图片中所做的是正确的吗,那么?我不明白你的例子是如何解释为什么TypeScript不能从赋值中推断类型的。那么,我在上一张图片中所做的是正确的吗?我不明白你的例子是如何解释为什么TypeScript不能从赋值中推断类型的。