在半大型TD文件中组织接口

时间:2017-02-04 01:54:44

标签: typescript typescript-typings typescript2.0

我正在努力清理XRM存储库(https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/xrm)的定义,并且需要一些指导如何构建定义中的接口。 (这里是一个备忘单,只是为了了解Xrm是如何构造https://drive.google.com/file/d/0B9-OddqJEKamWEs0MV9MMDdsWE0/view

基本上所有内容都是Xrm.PageXrm.Utility,但可以深入(Xrm.Page.ui.formSelectorXrm.Page.ui.navigationXrm.Page.data.process等等。我相信这些"名称空间"应该是他们自己的界面。我的问题是你如何构建代码中的接口?把所有东西放在根级别?那么Xrm.Data(或者XrmPageData)界面是Xrm.Page.data?这可能会导致命名冲突,但会使一切变得简单。其他选项是将它们嵌套在找到它们的位置,因此Xrm.Page.Data模块中存在Xrm.Page(同名,但不是Xrm.Page接口)。

目前定义文件正在使用两者,我只是想知道指南/最佳实践是什么。

1 个答案:

答案 0 :(得分:1)

简单的事实是,键入的用户将参考XRM文档以获取帮助和示例。从使用角度来看,最明显的方法是使您的类型定义类似于API文档。在这种情况下,这意味着使用您的第二个建议,其中Xrm.Page.data变为data,放在Xrm.Page模块中。