Начиная с версии 6.0.0, загрузка mobx-react как UMD из CDN вызывает ошибку. Есть ли этому решение?
Пример
const { observer } = mobxReact;
const App = observer(() => <div>Example</div>);
ReactDOM.render(<App />, document.getElementById("root"));
<script src = "https://cdnjs.cloudflare.com/ajax/libs/react/17.0.1/umd/react.production.min.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.1/umd/react-dom.production.min.js"></script>
<script src = "https://cdn.jsdelivr.net/npm/mobx@6.0.4/dist/mobx.umd.production.min.js"></script>
<script src = "https://cdn.jsdelivr.net/npm/mobx-react@7.0.5/dist/mobxreact.umd.production.min.js"></script>
<div id = "root"></div>
Начиная с версии 6.0.0, mobx-react зависит от пакета mobx-react-lite, который он использует для функциональных компонентов при использовании observer.
Если вы используете только функциональные компоненты в своем приложении, вы можете использовать mobx-react-lite напрямую, если хотите, что немного быстрее и меньше (всего 1,5 КБ в сжатом виде).
Пример
const { observer } = mobxReact;
const App = observer(() => <div>Example</div>);
ReactDOM.render(<App />, document.getElementById("root"));
<script src = "https://cdnjs.cloudflare.com/ajax/libs/react/17.0.1/umd/react.production.min.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.1/umd/react-dom.production.min.js"></script>
<script src = "https://cdn.jsdelivr.net/npm/mobx@6.0.4/dist/mobx.umd.production.min.js"></script>
<script src = "https://cdn.jsdelivr.net/npm/mobx-react-lite@3.1.6/dist/mobxreactlite.umd.production.min.js"></script>
<script src = "https://cdn.jsdelivr.net/npm/mobx-react@7.0.5/dist/mobxreact.umd.production.min.js"></script>
<div id = "root"></div>