На мой взгляд, рекомендуется экспортировать вариантные константы для каждого элемента, на который вы можете ссылаться при импорте элемента, пример будет выглядеть так:
<Button variant={Button.Variant.PRIMARY}> This is a primary button </Button>
И кнопкаВы можете выполнить проверку, используя те же самые константы this.props.variant === Variant.Primary
Нет реальной проблемы с производительностью при сравнении строк, это просто слабо типизированный способ перехода к тому же решению, и он выглядит немного более запутанным.Этот метод означает, что в нем нет места для ошибок, и очень ясно, какова цель.
Если вам нужно немного больше кода, чтобы понять, что я имею в виду, дайте мне знать