Ошибка получения Невозможно прочитать свойство 'значение' из неопределенного при передаче значения в параметре - PullRequest
0 голосов
/ 25 апреля 2020

Все, что я хочу, это просто передать этот массив в качестве параметра из Book. js и получить его в корзину. js другой компонент, но я продолжаю получать эту ошибку в Cart. js: TypeError: Cannot читать свойство 'значение' из неопределенного.

Приложение. js

<Route path='/Cart/:value' render={()=>(
           <div><Header/>
           <Cart/>
           </div>
          )}     
        />

Заголовок. js

 <div className="header">
                    <Link to ="/">Home</Link>
                    <Link to ="/Books">Books</Link>
                    <Link to="/Cart/value">Cart</Link>
  </div>

Книга. js

  { all_books.map((one_book, index) =>
                <div key={index} className="single_book">
                        {/* {Object.values(one_book).map((a_book, index) =>
                        <h4>{a_book}</h4>
                        )}   */}
                    <h3>Book Name :- {one_book[1]}</h3>
                    <h3>Price :- {one_book[2]}</h3>
                    <h3>Author :- {one_book[3]}</h3>
                    <h3>No. of Pages :- {one_book[4]}</h3>


                        <Link  
                        to = {`/Cart/${one_book}`}>

                        Add to Cart

                        </Link>
                    </center>
                </div>
            )} 

Корзина. js

  <div>
             {this.props.params.value}
            </div>

1 Ответ

1 голос
/ 25 апреля 2020

Вы можете попробовать передать реквизиты в вашем рендере следующим образом.

<Route path='/Cart/:id' render={(props)=>(
       <div><Header/>
       <Cart id={props.match.params.id} />
       </div>
      )}     
    />

Также убедитесь, что вы передаете правильный ID.

...