javascript - Nesting av malstrenger i Typescript


Jeg prøver å hente en variabel fra et objekt.

cell: (row: any) => `${row.testcolumn}`

Mitt eneste problem er at jeg ikke vet hva 'testcolumn' er på forhånd siden jeg gjør dette dynamisk. Jeg er ikke sikker på hva jeg skal gjøre, og den nestede malstrengen jeg prøver på vil ikke kompilere.

cell: (row: any) => `${row.(`${varString}`)}`

Jeg har også prøvd å bare bruke variabelnavnet i stedet for å nestle en malstreng, men det ser bare etter verdien av varString i objektet, som ikke finnes. Er det noen måte jeg kan bruke en nestet literal for å erstatte strengverdien i malstrengen og fortsatt se etter row.testcolumn i stedet for row.varString?

Svar #1

Det er det samme for mal-litteraler som for vanlig JS. Objekt-egenskaper kan hentes dynamisk med hakeparentesnotasjon, row[varString].

Det vil være:

cell: (row: any) => `${row[varString]}`

Relaterte artikler