Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

"App.contextTypes"

App.contextTypes = {
    store : React.PropTypes.object.isRequired
}

Essa declaração acima diz/faz o quê?

Quer dizer que o componente "App" espera que seja declarada uma propriedade "store" no escopo global?

Como declarado aqui?

ReactDOM.render(
  (
    <Provider store={store}>
       <Router history={browserHistory}>
        <Route path="/" component={Login}/>
        <Route path="/timeline(/:login)" component={App} onEnter={verificaAutenticacao}/>      
        <Route path="/logout" component={Logout}/>
      </Router>
    </Provider>
  ),
  document.getElementById('root')
);

nessa parte?

<Provider store={store}>

E se eu quiser validar as propriedades de um componente normal? Como por exemplo, um hipotético componente "CustomizedButton"?

Como eu deveria proceder, pra fazer com que o atributo "type" seja obrigatório?

Seria assim?

CustomizedButton.contextTypes = {
   type : React.PropTypes.string.isRequired
}

Isso estaria correto?

Qual é a diferença de quando quisermos validar uma propriedade que é global de uma propriedade que é local no componente?

1 resposta
solução!

Fala aí Marcelo, tudo bem? O contextTypes é usado para definir o que deve ser injetado no context do componente. Mas é uma AP legada, a nova Context API é bem diferente à essa.

https://pt-br.reactjs.org/docs/context.html

Esse link é a documentação da nova API de contexto, sugiro dar uma olhada.

Outro detalhe, esse curso possuí uma versão atualizada, recomendo fazer o mesmo.

Espero ter ajudado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software