Не происходит отрисовка компоненты через React.createportal

Почему не происходит отрисовка компоненты при клике на элемент?

Ошибок никаких нет, но и результата тоже.

let [showAllBooks, setShowAllBooks] = useState(false);

    function renderAllBooks() {
        let p = new Promise((resolve, reject) => {
            setShowAllBooks(true);
            resolve(!showAllBooks);
        })
        p.then((modalBooks) => {
            if (modalBooks === true) {
                return ReactDOM.createPortal(<AllBooks/>, document.getElementById('root'))
            }
        })
    }


    return (
        <div className={props.modalBook ? s.activeModal : s.modalBooks}>
            <div className={s.activeModal__title}>
                <h4>Best books</h4>
                {
                    props.state['booksItem'].length > 15 ?
                        <img src={grid} alt="" onClick={renderAllBooks}/> : <span/>
                }
            </div>
            <div
                className={s.activeModal__wrapper}
                ref={ref}
                onMouseDown={onMouseDown}
                onMouseUp={onMouseUp}
                onMouseMove={onMouseMove}
            >
                {props.state['booksItem'].map((item, index) => {
                    return (<div className={s.book} key={index}>
                        <img src={book} alt=""/>
                        <p>{item}</p>
                    </div>);
                })}
            </div>
        </div>
    );

Ответы (0 шт):