我正在使用Electron开发一个应用程序,并希望开始使用React。 因此,我已经安装了react和react-dom软件包:
npm install --save react react-dom
我的javascript文件包含在:
<script src="js/character-rolling.js"></script>
我已将此添加到javascript文件的第一部分:
var React = require("react");
var ReactDOM = require("react-dom");
var Greeting = React.createClass({
render: function() {
return <h1>Hello, {this.props.name}</h1>;
}
});
但是,当我运行代码时,chrome开发人员工具会显示错误:
character-rolling.js:6 Uncaught SyntaxError: Unexpected token <
乍一看,人们会说浏览器无法解释语法,但这不应该是纯粹的ES5语法吗?我想保持我的应用程序简单,而不是开始使用像Babel这样的工具。我认为浏览器应该没有问题地解释这个。电子版:
[marco@marco-archLinux deeMemory]$ npm run electron --version
4.0.3
答案 0 :(得分:2)
虽然它是ES5语法,但你所写的是 JSX而不是纯Javascript ,因此你在unexpected token <
得到错误return <h1>Hello, {this.props.name}</h1>;
。您需要一个工具来转换您的浏览器JSX to JS
才能理解。
为此你绝对需要babel
。为了使用它,您可以使用webpack
来使用babel
将代码捆绑到JS文件中。