Accessing a readonly property in a class in Typescript is forbidden

export declare class Config {
    readonly ROUTE_TYPE_CREATE: string;
}

import { Config } from "./Config";

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

Upon compiling the code, an error is thrown:

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

The issue seems to be that the property ROUTE_TYPE_CREATE is inaccessible. Why could this be happening?

Answer №1

It seems like you forgot to add a static property named Config.ROUTE_TYPE_CREATE in your Config class. To fix this, simply declare it as a static property like this:

declare class Config {
    static readonly ROUTE_TYPE_CREATE: string; 
}

The error message is trying to tell you this, so make sure to pay close attention:

Property 'ROUTE_TYPE_CREATE' does not exist on type 'typeof Config'.

Remember, since you're working directly with the class, the error message specifies 'typeof Config' instead of just 'Config'.

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Issue with Typescript/Angular2: http.post failing to set headers

Having trouble with transmitting headers in a json post from Angular2 beta 8: import { RequestOptions, RequestMethod, Headers, RequestOptionsArgs, Http } from 'angular2/http'; // ... let headers = new Headers(), body = JSON.stringify({ iden ...

Dealing with Typescript Errors in Ionic3: How to Handle "Property 'x' does not exist on value of type 'y'" Issues

I stumbled upon this particular post (and also this one) while searching for a solution to my issue. I am looking to suppress these specific errors: 'Payload' property is missing from the 'Matatu' type. 'Key' property is no ...

What could be causing the issue with my output not displaying correctly?

Hey guys! I'm working on creating a to-do list but I've encountered a problem. Whenever I enter a value in the text field, it doesn't get added to the array of list elements. Strangely enough, when I console.log it, it seems to work. Can any ...

Techniques for returning errors to the calling function using async functions

I am currently encountering an error where if "dateofBirth" is not found, an empty object is sent back to the client. How can I change this so that an error object is sent back instead of an empty object? Essentially, I want to send back a catch process. ...

What are the steps to implement cp-react-tree-table in my application?

Recently diving into TypeScript, I decided to explore the demo provided by https://www.npmjs.com/package/cp-react-tree-table in order to incorporate this control into my project. However, I encountered some unexpected information. After conducting a thoro ...

Creating a string array within an array in TypeScript

Struggling to return a type-safe Typescript v3.5 array without having to declare it within the method body? This array should consist of multiple string arrays. Desiring something along the lines of: foo(): Array<Array<string>>: // perfo ...

The onChange() function should only consider the last character typed, rather than evaluating the entire line each time

Explanation: I am utilizing the onChange function to detect when someone types the symbol @. Issue: While typing, the code currently checks the entire line each time a character is added, causing a lag in typing speed. I am looking to update the code so i ...

In order to deactivate all buttons generated by ngFor in Angular 8, you can disable every button except for the one that has been

If you want to see the full functionality, please make sure to open it in a full browser window by clicking this link. Once opened, try clicking on the button or image of any list item - it will change its appearance as if it's active. Even if you ref ...

The object may be null even after being enclosed in an if statement

In my Vue component, I have implemented the following method: dataURLtoBlob(dataurl: string): Blob { const arr: string[] = dataurl.split(","); if (arr) { if (arr[0]) { const mime = arr[0].match(/:(.*?);/)[1]; ...

What is causing the issue with TypeScript's React.createRef() and its compatibility with the material-ui Button element?

Running on React version 16.13.1, my component class includes a Material-UI Button component and a RefObject to access the button element. class Search extends React.Component<any, any>{ constructor(props: any) { super(props) this.streetV ...

Obtain a date exclusively for a specified time on the current day

Is there a way to obtain a datetime for a specific time on the current day without relying on momentJS? My input is a string of the time in the format 13:45 I attempted to achieve this using the following code snippet: const time: String = '13:45&apo ...

Utilizing Angular to import an SVG file from a backend and incorporate its content as a template

I am looking for a solution to load an SVG date from my Spring Boot backend and utilize it as an Angular template. Currently, the request is structured like this: getSVG (): Observable <any> { return this.http.get(`${environment.apiUrl}/path ...

Turn off the warning message that says 'Type of property circularly references itself in mapped type' or find a solution to bypass it

Is there a way to disable this specific error throughout my entire project, or is there a workaround available? The error message states: "Type of property 'UID' circularly references itself in mapped type 'Partial'.ts(2615)" https:/ ...

The attributes for react-table pagination are not found in the 'TableInstance{}' type

Trying to set up a pagination feature using react-table, tutorials usually start with the following code snippet: const { getTableProps, getTableBodyProps, headerGroups, page, prepareRow, visibleColumns, ...

Learn how to utilize a Library such as 'ngx-doc-viewer2' to preview *.docx and *.xlsx files within the application

After 3 days of searching, I finally found a solution to display my *.docx and *.xlxs files in my angular application. The API returns the files as blobs, so my task was to use that blob to show the file rather than just downloading it using window.open(bl ...

Is there a way to verify if a user taps outside a component in react-native?

I have implemented a custom select feature, but I am facing an issue with closing it when clicking outside the select or options. The "button" is essentially a TouchableOpacity, and upon clicking on it, the list of options appears. Currently, I can only cl ...

Utilizing the WebSocket readyState to showcase the connection status on the application header

I am currently in the process of developing a chat widget with svelte. I aim to indicate whether the websocket is connected or not by utilizing the websocket.readyState property, which has the following values: 0- Connecting, 1- Open, 2- Closing, 3- Close ...

The status of the 'slider' may be 'undefined'

I'm really struggling to figure out how to resolve this issue, even though I suspect it's a simple fix that's eluding me... Here is the part of my code in TypeScript that's causing the error: const slideLeft = () => { cons ...

Performing a search through a string array and updating a specific portion of each string

I am faced with an array containing a long list of Strings, and my goal is to filter out all the strings that begin with 'INSERT ALL' and replace the number inside the parentheses with the string ' NULL' Here is the original array: le ...

Can a concept like "A Rectangle can be a Square but a Square cannot be a Rectangle" be formulated?

Currently, I am working on developing a unique "loose" nominal type that allows assignment from its base type, but restricts assignment from other nominal types with the same base type. Is there a way to modify the existing Nominal type found here to achie ...