2016-02-07 4 views
0

Как я могу preventDefault на <Link> ниже в зависимости от значения dependency?Arrow Функция preventDefault

handleClick(e, dependency) { 
    if (!isLoaded(dependency)) e.preventDefault(); 
} 

renderItem(data) { 
    const { url, dependency } = data; 
    return (
    <Link to={url} onClick={() => this.handleClick(dependency)} /> 
); 
} 

Поскольку анонимные функции стрелки является асинхронной, то ссылка продолжается и preventDefault игнорируются.

ответ

0

Я понял, что вы можете передать объект события анонимного обратного вызова:

handleClick(e, dependency) { 
    if (!isLoaded(dependency)) e.preventDefault(); 
} 

renderItem(data) { 
    const { url, dependency } = data; 
    return (
    <Link to={url} onClick={(e) => this.handleClick(e, dependency)} /> 
); 
} 
Смежные вопросы