我有一个JavaScript对象,用于存储单词词典:
var Words = {};
Words.Account="Account";
Words.Account_Login="Account Login";
我的Typescript定义如下所示:
declare class Words {
Account: string;
Account_Login: string;
}
要在我的TypeScript中使用它,我必须使用" prototype"。我怎么能不用原型?
/// <reference path="../typings/words.d.ts" />
var abc = Words.prototype.Account_Login;
答案 0 :(得分:1)
在您的示例中,您通过Words类访问Account_Login,就像它是一个静态变量一样。
如果你正在创建一个类Words
,那么我希望你会使用它这样的东西:
var myWords = new Words();
var abc = myWords.Account_Login;
您可能需要定义如下所示的接口,而不是类定义:
declare interface IWords{
Account: string;
Account_Login: string;
}
然后使用您的Words对象确保您使用的是您定义的界面
var myWords = Words as IWords;
var abc = myWords.Account_Login;
答案 1 :(得分:1)
@ tj-rockefeller是正确的,我还发现如果我也只是将单词设为静态,我可以按预期使用它们。
var Words = {};
static Words.Account="Account";
static Words.Account_Login="Account Login";