1
我构建了包装:酶 - 芒无法找到id元素
this.wrapper = mount(<App />, { context: this.store });
然后我试图通过它的ID查找某个HTML元素:
console.log("WRAPPER:", this.wrapper.debug());
return this.wrapper.find('#Form-input[0]-fields-field1');
的包装是无法找到这个元素。在执行console.log的输出如下:
WRAPPER:
<Many children/components down...>
<input name="Form-input[0].fields.field1" onBlur={[Function]} onChange={[Function]} onDragStart={[Function]} onDrop={[Function]} onFocus={[Function]} value="asdf" type="text" id="Form-input[0]-fields-field1" disabled={false} />
<Many more things after this...>
所以用正确的ID输入肯定是存在的。我错过了什么吗?
你是对的!但是,wrapper.find似乎不允许转义字符。因此,我最终通过调用wrapper.find({id:'Form-input [0] -fields-field1'})来解决这个问题。 – Infamous911
很高兴你解决它!我检查了Enzyme的回购有关这个问题 - 他们正在寻求改进选择器的解决方案。 –
是的,'find'的参数不像普通的css选择器字符串那样被处理是超级混淆!它似乎在寻找这个角色,在这个角色它忽略了那个角色之后的所有其他角色。 – Infamous911