Typescript 为什么office js打字中的某些属性是强制性的

Typescript 为什么office js打字中的某些属性是强制性的,typescript,office-js,Typescript,Office Js,奇怪的是,为什么office js中的某些属性是强制性的。例如在 export interface AsyncResult { asyncContext: any; status: AsyncResultStatus; error: Error; value: any; } 如果AsyncResultStatus成功,则不必设置任何错误可能是完全有效的。如果您对此有任何想法/反馈,我们将不胜感激。office js的共享API部分在office名称空间下键入任何

奇怪的是,为什么office js中的某些属性是强制性的。例如在

export interface AsyncResult {
    asyncContext: any;
    status: AsyncResultStatus;
    error: Error;
    value: any;
}

如果AsyncResultStatus成功,则不必设置任何错误可能是完全有效的。如果您对此有任何想法/反馈,我们将不胜感激。

office js的共享API部分在office名称空间下键入任何内容,而不是Excel或Word for 2016 API,这是很久以前手工制作的。我说手动,因为Excel、Word等名称空间下的API都是机器生成的。因此,对于这些手册部分,可能存在一些细微的差异


也就是说,对于你的特殊情况,我实际上不认为有什么问题。您永远不会创建AsyncResult对象,您只会收到一个。因此,虽然事实上只有一部分对象会被填充,但我也认为它目前的定义方式没有问题。在什么情况下,它会阻止您执行您希望执行的操作?

正在尝试实现其中一些返回AsyncResult的函数。抱歉,我不确定是否理解。难道你就不会使用这些函数吗?无论如何,您可以在office JS的definitelytyped项目上发送pull请求