Javascript 使用broserify为reactJS编译jsx时出错
我在ReactJS的世界里是新手。我正在尝试一个测试应用程序,我获得了下一个: 我有下一个部分: BtnLink.jsJavascript 使用broserify为reactJS编译jsx时出错,javascript,babeljs,react-jsx,jsx,Javascript,Babeljs,React Jsx,Jsx,我在ReactJS的世界里是新手。我正在尝试一个测试应用程序,我获得了下一个: 我有下一个部分: BtnLink.js var BtnLink = new React.createClass({ getInitialState:function(){ return { class : 'btn btn-primary', label : 'Continuar' } }, changeBut
var BtnLink = new React.createClass({
getInitialState:function(){
return {
class : 'btn btn-primary',
label : 'Continuar'
}
},
changeButton : function(){
},
render : function(){
return(
<div>hola</div>
);
}
});
var Boton = require('./components/BtnLink.jsx');
var app = {
// Application Constructor
initialize: function() {
console.log("here with me");
ReactDOM.render(<BtnLink>, document.getElementbyId('app'))
},
onDeviceReady: function() {
this.receivedEvent('deviceready');
},
};
控制台在“hola”行上显示错误(或“if i change it=。from BtnLink.jsx文件)。如果我仅将该行更改为文本,例如“hola”而不使用html选择器,则命令会运行ok,但这不是问题所在,因为React的组件可能会返回html而不会出现问题。对吗?有人知道错误是什么吗
更新日期:2017年1月6日
我还尝试了babel,使用下一个命令
$ babel --presets es2017 js/src/components --watch --out-dir js/dist/components
响应与browserify相同
js\src\components\BtnLink.jsx -> js\dist\components\BtnLink.js
SyntaxError: js/src/components/BtnLink.jsx: Unexpected token (6:3)
4 | render : function(){
5 | return(
> 6 | <div>hola</div>
| ^
7 | )
8 | }
9 | });
js\src\components\BtnLink.jsx->js\dist\components\BtnLink.js
语法错误:js/src/components/BtnLink.jsx:意外标记(6:3)
4 |渲染:函数(){
5 |返回(
>6 |你好
| ^
7 | )
8 | }
9 | });
尝试删除注释。在jsx文件中,注释应如下所示:
{/* Comment */}
将转换ES2017
功能,而不是其他功能。如果你想使用JSX,你会想使用babel preset react
,很可能你会想使用babel preset env
或babel preset latest
以及react嗨,我在这篇文章中添加的注释//只是为了展示真正的“组件”“但是我试着不用它。
{/* Comment */}
babel --presets es2017