Как я могу включить компонент Material UI (https://material -ui.com / Getting-Start / Use / ) в приложении веб-форм.Вот что у меня есть, но это не показывает компонент Button
У меня есть файл ASPX, и я использую UMD для добавления ссылок на React, Material UI и babel следующим образом:
<script src="https://unpkg.com/react@16/umd/react.development.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"> </script> <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"> </script> <script src="https://unpkg.com/@material-ui/core/umd/material- ui.production.min.js"></script> <script type="text/babel"> var prop1 = 'contained'; var prop2 = 'primary'; ReactDOM.render ( <Button variant = {prop1} color = {prop2}> Hello World </Button>, document.getElementById('test') ); </script>
Но когда я пробую образец без ссылочного компонента пользовательского интерфейса следующим образом, это работает:
<script src="https://unpkg.com/react@16/umd/react.development.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"> </script> <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"> </script> <script src="https://unpkg.com/@material-ui/core/umd/material- ui.production.min.js"></script> <script type="text/babel"> class Greeting extends React.Component { render() { return (<p>Hello world</p>); } } ReactDOM.render( <Greeting />, document.getElementById('test') ); </script>
Возникает ошибка: Button не определено.
Button
Вам необходимо добавить const {Button} = window['material-ui'];.
const {Button} = window['material-ui'];
. Пример UMD Material-UI можно найти здесь:
https://github.com/mui-org/material-ui/blob/master/examples/cdn/index.html
Ниже приведен рабочий фрагмент с исправленной версией вашего кода.
<div id="test"> </div> <script src="https://unpkg.com/react@16/umd/react.development.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"> </script> <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"> </script> <script src="https://unpkg.com/@material-ui/core/umd/material-ui.production.min.js"></script> <script type="text/babel"> var prop1 = 'contained'; var prop2 = 'primary'; const {Button} = window['material-ui']; ReactDOM.render ( <Button variant = {prop1} color = {prop2}> Hello World </Button>, document.getElementById('test') ); </script>