Duvida no React. Bug?

Ola tenho o seguinte código no React:

    constructor(props){
        super(props);
        this.state = {lista:[]};
    } 

componentWillMount(){
    axios['get']('http://localhost:8080/products/').then(resp =>{
        const lista = resp.data;
        this.setState({lista});
        console.log("will:"+this.state.lista.length);
    });
}

componentDidMount(){
    console.log("did:"+this.state.lista.length);
}

O que não estou entendo é que quando recupero o array da apirestful (feito no java) no método “compenetWillMount” está imprimindo no console o tamanho do array, mas quando tento chamá-lo em outro método o array esta vazio! já tentei de algumas maneiras resolver, mas no final o array sempre acaba ficando sem nada contido.