React Element Factories e JSX Warning
Você provavelmente chegou até aqui porque seu código está chamando seu componente como uma chamada de função simples. Isso está obsoleto agora:
var MyComponent = require('MyComponent');
function render() {
return MyComponent({ foo: 'bar' }); // WARNING
}
JSX
Componentes React não podem mais ser chamados diretamente dessa forma. Ao invés disso, você pode usar JSX.
var React = require('react');
var MyComponent = require('MyComponent');
function render() {
return <MyComponent foo="bar" />;
}
Sem JSX
Se você não quiser, ou não puder usar JSX, terá que fazer um wrap do seu componente em uma factory antes de chamá-lo:
var React = require('react');
var MyComponent = React.createFactory(require('MyComponent'));
function render() {
return MyComponent({ foo: 'bar' });
}
Essa é uma maneira fácil de atualização se você tiver muitas chamadas de função existentes.
Componentes dinâmicos sem JSX
Se você obtiver uma classe de componente de uma fonte dinâmica, talvez não seja necessário criar uma factory que você invoque imediatamente. Em vez disso, você pode simplesmente criar seu elemento inline:
var React = require('react');
function render(MyComponent) {
return React.createElement(MyComponent, { foo: 'bar' });
}
Mais a fundo
Esta página é útil?Edite esta página