我有一个打字稿文件下面的代码:无法获得属性的值“元素类型”:对象为空或未定义
define('myModule', [], function() {
var self = {
init: function() {
doSomething();
}
};
var dayNames:string[] = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
function doSomething() {
var current = new Date();
var day = dayNames[current.getDay()];
}
return self;
});
但是它不与Visual Studio 2012 /网络要点2012编译。
Compile Error. See error list for details tsc.js(19148, 13) Microsoft JScript runtime error: Unable to get value of the property 'elementType': object is null or undefined
奇怪的是,相同的代码似乎编译在TypeScript playground罚款。我已经检查了CodeBlex(0.8.3.0)上最新版本的C:\ Program Files(x86)\ Microsoft SDKs \ TypeScript \ tsc.js的版本。
如果我注释掉以下行,它编译罚款:
var day = dayNames[current.getDay()];
而且在隔离下面的代码块也编译罚款:
var dayNames:string[] = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
function doSomething() {
var current = new Date();
var day = dayNames[current.getDay()];
}
那我做错了吗?
是的,编译。期待解释! – 2013-04-30 11:11:31
其他人可能有一个,但不幸的是我没有。 – JcFx 2013-04-30 11:14:15
+1,就像JcFx说的,自我依赖于doSomething取决于dayNames。所以我会把dayNames - > doSomething - > self。但是dayname - > self - > doSomething也可以正常工作。 – basarat 2013-04-30 13:31:53