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