Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在typescript中创建对象类型_Typescript - Fatal编程技术网

如何在typescript中创建对象类型

如何在typescript中创建对象类型,typescript,Typescript,我正在使用打字脚本。我想在对象中生成特定类型的键。 但这根本不起作用 它给了我一些错误,如下所示。 类“Config”错误地实现了接口“IConfig”。 属性“DBConfig”在类型“Config”中是私有的,但在类型“IConfig”中不是私有的 成员“DBConfig”隐式具有“any”类型 你能为这个案子推荐一些建议吗?非常感谢您阅读 接口描述类的公共端,而不是公共端和私有端。这禁止您使用它们来检查类实例的私有端是否也具有特定类型 来源:尝试对象(小写),在您的情况下,如果可能的话,我

我正在使用打字脚本。我想在对象中生成特定类型的键。
但这根本不起作用
它给了我一些错误,如下所示。

类“Config”错误地实现了接口“IConfig”。 属性“DBConfig”在类型“Config”中是私有的,但在类型“IConfig”中不是私有的

成员“DBConfig”隐式具有“any”类型

你能为这个案子推荐一些建议吗?非常感谢您阅读

接口描述类的公共端,而不是公共端和私有端。这禁止您使用它们来检查类实例的私有端是否也具有特定类型


来源:

尝试
对象
(小写),在您的情况下,如果可能的话,我建议更加精确,并使用
IConfig['DBConfig']
。要实现接口Member,必须将其公开。。从'private DBConfig'中删除
private
`错误消息提供了两个重要信息:您没有公共的
DBConfig
来匹配接口,并且您的实现的
DBConfig
没有指定类型(该类型需要匹配接口中的类型,并且需要是公共的,才能算作实现)。
interface IConfig {
  DBConfig: {
    username: string;
    password: string;
    database: string;
    host: string;
    dialect: string;
  };
}

class Config implements IConfig {
  private DBConfig;

  constructor() {}

  public getDBConfig(environment: string): Object {
    switch (environment) {
      case "local":
        this.DBConfig = {
          username: "root",
          password: "1234",
          database: "test",
          host: "127.0.0.1",
          dialect: "mysql",
        };
        break;
    }
    return this.DBConfig;
  }
}

export { Config };