我很幸运使用React的JSXTransformer.js在浏览器中使用JSX进行开发:
<script src="http://fb.me/JSXTransformer-0.11.1.js"></script>
<script type="text/jsx">
/** @jsx React.DOM */
...
</script>
为了减少样板,我想使用Harmony的一些功能,例如: arrow functions。 Facebook的JSX Compiler Service有一个和声复选框,可以将ES6转换为更传统的JS:
var f = v => this.props[v];
// becomes var f = function(v) { return this.props[v]; }.bind(this);
是否可以使用浏览器内的JSX启用此转换?
答案 0 :(得分:21)
React v0.11中的此功能was added。您设置type="text/jsx"
而不是type="text/jsx;harmony=true"
。例如:
<script type="text/jsx;harmony=true">
/** @jsx React.DOM */
var f = v => v*v;
console.log(f(2)); // logs 4
</script>