Quel est le problème avec cette fonction, j'essaie de faire fondre la barre de navigation au moment du défilement mais cela me renvoie une erreur dans la fonction suivante?Erreur "état n'est pas défini" dans Meteor + Réagir.
const opacity = Math.min(100/state.alturaActualScroll, 1);
i ont mon composant navbar mais me dit que l'état n'a pas été défini, mais je ne sais pas parce que l'erreur, ceci est mon code
import React from 'react';
import {Link} from 'react-router'
import { Accounts } from 'meteor/accounts-base';
import {Meteor} from 'meteor/meteor';
export default class NavbarLanding extends
React.Component {
componentDidMount() {
window.onscroll =()=> {
this.setState({
alturaActualScroll: window.scrollY})
}
}
componentDidMount() {
window.onscroll =()=>{
nuevaAlturaScroll = Math.ceil(window.scrollY/50) *50;
if(this.state.alturaActualScroll != nuevaAlturaScroll){
this.setState({alturaActualScroll:nuevaAlturaScroll})
}
}
}
// update
render() {
// console.log('donde estoy');
const opacity = Math.min(100/state.alturaActualScroll, 1);
return(
<div style={opacity}id="navbar"className="navbar-landing">
<nav>
<div>
<ul className="ul-landing">
{/* <img src="./public/images/flat-rocket.jpg"></img> */}
<li id="navbar-landing-title" className="navbar-title"><a>Landing </a></li>
<div id="menu-landing"className="navbar-menu">
<li><a>acerca</a></li>
<li><a>portafolio</a></li>
<li><a>contacto</a></li>
<button className="btn"onClick={() => Accounts.logout()}>Logout</button>
</div>
</ul>
</div>
</nav>
</div>
);
};
}
NavbarLanding.reactProptype = {
title: React.PropTypes.string.isRequired
};
Alors, où est définie la variable 'state'? Une autre chose: vous avez 'componentDidMount' défini deux fois. – zerkms