【问题标题】:Typescript: readonly property in class cannot be accessed打字稿:无法访问类中的只读属性
【发布时间】:2017-07-12 04:13:22
【问题描述】:
export declare class Config {
    readonly ROUTE_TYPE_CREATE: string;
}

import { Config } from "./Config";

export default class NewComponent {
    constructor() {
        this.routeType = Config.ROUTE_TYPE_CREATE;
    }
}

当我编译代码时,它返回:

ERROR in [at-loader] ./new.cpn.ts:12:33 
    TS2339: Property 'ROUTE_TYPE_CREATE' does not exist on type 'typeof Config'.

有什么问题?为什么无法访问?

【问题讨论】:

    标签: typescript tsc


    【解决方案1】:

    您在Config 上声明了一个实例属性,但没有声明一个名为Config.ROUTE_TYPE_CREATE 的静态属性。添加static,它应该可以工作:

    declare class Config {
        static readonly ROUTE_TYPE_CREATE: string; 
    }
    

    如果你仔细阅读非常,错误信息提示了这一点:

    类型“typeof Config”上不存在属性“ROUTE_TYPE_CREATE”。

    如果您有一个实例,那将是 on type 'Config',但您是直接使用该类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-05
      • 2018-04-16
      • 2017-06-15
      • 2021-10-11
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多