.containsAnyMatchingElements(patternNodes) => Boolean
Возвращает значение true или false, в зависимости от того, соответствует ли хотя бы один из заданных react-элементов в patternNodes элементу в дереве рендеринга обертки. Один или несколько элементов из patternNodes должны быть сопоставлены один или несколько раз. Сопоставление происходит по правилам containsMatchingElement.
Аргументы
-
patternNodes(Array<ReactElement>): Массив узлов, присутствие которых вы определяете в дереве рендеринга текущего экземпляра.
Возвращает
Boolean: true или false, в зависимости от того, содержит ли текущая обертка в своём дереве рендеринга любой узел, похожий на один из переданных в массиве.
Пример
const style = { fontSize: 13 };
const wrapper = mount((
<div>
<span className="foo">Hello</span>
<div style={style}>Goodbye</div>
<span>Again</span>
</div>
));
expect(wrapper.containsAnyMatchingElements([
<span>Bonjour</span>,
<div>Goodbye</div>,
])).to.equal(true);
Общие сложности
-
.containsAnyMatchingElements()ожидает массив ReactElement, а не селектор (как многие другие методы). Убедитесь, что вы вызываете его с массивом ReactElement или JSX-выражением. - Обратите внимание, что этот метод определяет равенство на основе равенства дочерних узлов.
Связанные методы
-
.matchesElement() => ReactWrapper- правила сопоставления каждого узла -
.containsMatchingElement() => ReactWrapper- правила сопоставления всей обертки -
.containsAllMatchingElements() => ReactWrapper- все узлы в patternNodes должны соответствовать
© 2015 Airbnb, Inc.
Licensed under the MIT License.
https://enzymejs.github.io/enzyme/docs/api/ReactWrapper/containsAnyMatchingElements.html