We want to hear from you!Take our 2021 Community Survey!
This site is no longer updated.Go to react.dev

Фабрики React-елементів та JSX-попередження

Напевно, ви попали сюди, тому що ваш код викликає компонент, як функцію. Наступний код тепер є застарілим:

var MyComponent = require('MyComponent');

function render() {
  return MyComponent({ foo: 'bar' });  // ПОПЕРЕДЖЕННЯ
}

JSX

React-компоненти більше не можуть викликатися таким чином. Замість цього ви можете використовувати JSX.

var React = require('react');
var MyComponent = require('MyComponent');

function render() {
  return <MyComponent foo="bar" />;
}

Без JSX

Якщо ви не хочете або не можете використовувати JSX, тоді перед викликом компонента вам необхідно перевести його у фабрику:

var React = require('react');
var MyComponent = React.createFactory(require('MyComponent'));

function render() {
  return MyComponent({ foo: 'bar' });
}

Це простий шлях оновлення, якщо у вас багато викликів функцій.

Динамічні компоненти без JSX

Якщо ви отримуєте клас компонента з динамічного джерела, то необов’язково створювати фабрику, на яку ви негайно посилаєтеся. Замість цього ви можете безпосередньо створити елемент:

var React = require('react');

function render(MyComponent) {
  return React.createElement(MyComponent, { foo: 'bar' });
}

Докладніше

Дізнайтеся докладніше, ЧОМУ ми робимо цю зміну.