Typescript-将注释保存在对象中时,代码以一种奇怪的方式编译
我有一个像这样的打字脚本文件Typescript-将注释保存在对象中时,代码以一种奇怪的方式编译,typescript,Typescript,我有一个像这样的打字脚本文件 var obj = { /** Test comment */ prop1: '', prop2: '' }; javascript编译如下所示 var obj = { prop1: /** Test comment */ '', prop2: '' }; 问题是JSDoc在生成文档时看不到对象的属性,因为注释位于属性之后 我的解决办法是 var obj; obj = {}; /** Te
var obj = {
/** Test comment */
prop1: '',
prop2: ''
};
javascript编译如下所示
var obj = {
prop1: /** Test comment */
'',
prop2: ''
};
问题是JSDoc在生成文档时看不到对象的属性,因为注释位于属性之后
我的解决办法是
var obj;
obj = {};
/** Test comment */
obj.prop1 = '';
obj.prop2 = '';
由于某种原因,在这个场景中,我必须将声明与初始化分开,否则类型脚本会在obj.propX=''上抛出一个错误代码>行数
类型为“{}”的值上不存在属性“propX”
我的问题是:
还有其他人在对象中的注释放置方面遇到过这个问题吗
如果是这样的话,如果与我自己的解决方案不同,你是如何解决的
如果没有,我可以做些什么来阻止错误的发生,这样我就可以将变量声明和初始化结合起来
这是一个错误。在TypeScript的未来版本中,注释将被正确保留
同时,对于解决方案,您有两种选择:
或者
var obj: any = {}; // No type checking, anywhere, on obj
或
在此之后,您可以执行此操作,并应按预期工作:
/** Test comment */
obj.prop1 = '';
/** Test comment */
obj.prop1 = '';