CollectionTemplateManager

用于管理 CollectionTemplate,其被 DataSourceManager 管理。

实例方法

addCollectionTemplates(templates)

用于添加 collection template。

  • 类型
class CollectionTemplateManager {
  addCollectionTemplates(templates: CollectionTemplate[]): void;
}
  • 示例
class SqlCollectionTemplate extends CollectionTemplate {
  name = 'sql';
  type = 'object';
  title = '{{t("SQL collection")}}';
  configurableProperties = {
    // ...
  }
}

class TreeCollectionTemplate extends CollectionTemplate {
  name = 'tree';
  type = 'object';
  title = '{{t("Tree collection")}}';
  configurableProperties = {
    // ...
  }
}

class MyPlugin extends Plugin {
  async load() {
    this.dataSourceManager.collectionTemplateManager.addCollectionTemplates([ SqlCollectionTemplate, TreeCollectionTemplate ]);

    // or
    this.dataSourceManager.addCollectionTemplates([ SqlCollectionTemplate, TreeCollectionTemplate ]);
  }
}

getCollectionTemplate(name)

用于获取 collection template。

  • 类型
class CollectionTemplateManager {
  getCollectionTemplate(name: string): CollectionTemplate;
}
  • 示例
collectionManager.getCollectionTemplate(); // generalCollectionTemplate

collectionManager.getCollectionTemplate('tree'); // treeCollectionTemplate

getCollectionTemplates()

用于获取所有 collection templates。

  • 类型
class CollectionTemplateManager {
  getCollectionTemplates(): CollectionTemplate[];
}
  • 示例
collectionManager.getCollectionTemplates(); // [ generalCollectionTemplate, treeCollectionTemplate, sqlCollectionTemplate ]