如何获得HTMLElement';使用vanilla JavaScript创建aria属性

如何获得HTMLElement';使用vanilla JavaScript创建aria属性,javascript,Javascript,我的团队使用carbon components react,它有一个TextInput组件。它使用aria descripeby=“呈现,如果字段无效,则添加一个 我试图使用@testing library/React编写一些React测试,以检查不同条件下div的值。我可以在测试中硬编码ID,但我讨厌硬编码将来可能发生变化的任何东西,特别是第三方。我一辈子都不知道如何获得输入的属性所描述的aria test('有正确的错误消息',()=>{ const wrapper=render(); co

我的团队使用
carbon components react
,它有一个
TextInput
组件。它使用
aria descripeby=“
呈现
,如果字段无效,则添加一个

我试图使用
@testing library/React
编写一些React测试,以检查不同条件下div的值。我可以在测试中硬编码ID,但我讨厌硬编码将来可能发生变化的任何东西,特别是第三方。我一辈子都不知道如何获得输入的
属性所描述的
aria

test('有正确的错误消息',()=>{
const wrapper=render();
const input=wrapper.findByLabelText(“我的必填字段”);
fireEvent.单击(输入);
firevent.blur(输入);
const error=document.getElementById(输入['aria-descripeby']);//输入['aria-descripeby']未定义
expect(error.innerText).toBe('此字段为必填字段,请擦洗');
});

就像堆栈溢出经常发生的那样,它提供了一个奇妙的橡皮鸭,所以我想我应该完成这个问题并写出答案

使用
input.getAttribute('aria-descripeby')