作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在没有 webpack、node 等的情况下使用 React。我想在单独的文件中构建每个组件,这就是我正在做的:
index.html
<html>
<body>
<div id="root">
<!-- This div's content will be managed by React. -->
</div>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<script src="https://unpkg.com/react@15/dist/react.min.js"></script>
<script src="https://unpkg.com/react-dom@15/dist/react-dom.min.js"></script>
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script type="text/babel" src="js/demandAnalysis/app.js"></script>
<script type="text/babel">
ReactDOM.render(<App />, document.getElementById('root'));
</script>
</body>
</html>
App.js
import SimpleButton from './componets/Buttons/SimpleButton.js';
class App extends React.Component {
render() {
return (
<div>
<Button/>
</div>
);
}
}
SimpleButton.js
class SimpleButton extends React.Component {
render() {
return (
<div>
<button type="button">Click me!</button>
</div>
);
}
}
但是在控制台中给我这个错误:
Uncaught ReferenceError: require is not defined
我认为是 import
造成的,如何在没有节点或 web pack 的情况下使用这种结构?
最佳答案
import
是 ES6 的特性,目前很多浏览器不支持。这就是为什么使用 babel
将代码转换为 ES5 的原因。对于您正在使用的 class
、extends
和 JSX 也是如此。
如果你不想使用转译器,你应该使用 require
而不是 import
和 React.createClass({ ... })
而不是 class
。
require
而不是 import
的示例:
var SimpleButton = require('./componets/Buttons/SimpleButton.js');
关于javascript - 如何在没有 webpack、node、nvm 等的情况下使用 React,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42376536/
我是一名优秀的程序员,十分优秀!