Хорошо, так что я понял это вскоре после. Но я оставлю этот вопрос на всякий случай, если у кого-то есть лучшее решение. Я использовал перечисление, содержащее цвета, которые я собирался использовать. Это, похоже, решило проблему.
import chalk from 'chalk';
enum ChalkColor {
Green = 'green',
Yellow = 'yellow',
}
function getColor(): ChalkColor {
let color = ChalkColor.Green;
color = ChalkColor.Yellow;
return color;
}
const chalkColor = getColor();
console.log(chalk[chalkColor]('message'));
Другое решение заключается в использовании (chalk[chalkColor] as Chalk)
, например так:
import chalk, { Chalk } from 'chalk';
function getColor(): keyof Chalk {
let color: keyof Chalk = 'green';
color = 'yellow';
return color;
}
const chalkColor = getColor();
console.log((chalk[chalkColor] as Chalk)('message'));