在 JavaScript 中动态加载 JSX 文件
Dynamically load JSX file in JavaScript
我正在尝试为 ReactJS 组件实现一个包装器 API 文件。
例如,/js/test.react.js
/** @jsx React.DOM */
var TESTCLASS = React.createClass({
render : function() {
return (
<div> Test </div>
);
}
});
我为此编写了一个包装器 JavaScript 文件:
var testClass = {
load: function () {
var script = document.createElement("script");
script.type = "text/jsx";
document.head.appendChild(script);
script.onload = function(){
React.render(
<TESTCLASS/>,
document.body)
};
script.src ="./js/test.react.js";
}
};
然后我可以在第三方HTML中使用包装器API JavaScript。
<html>
<head>
<title>Hello React</title>
<script src="http://fb.me/react-0.12.2.js"></script>
<script src="http://fb.me/JSXTransformer-0.12.2.js"></script>
<script src="http://code.jquery.com/jquery-1.10.0.min.js"></script>
<script type="text/jsx" src="test.js"></script>
</head>
<body>
<div id="content"></div>
<script>
testClass.load();
</script>
</body>
</html>
但是,在我看来,/js/test.react.js 无法作为纯 JavaScript 文件动态加载。任何专家都可以向我解释原因并提供适当的解决方案来编写我的包装器 API JavaScript 文件吗?
>JSXTransformer*.js
导出一个全局JSXTransformer
对象,该对象具有exec()
函数,该函数转译JSX然后eval()
结果。
您可以先尝试使用脚本的内容onload
运行JSXTransformer.exec()
。
此外,仅供参考,从 React 0.12 开始不再需要@jsx编译指示:)
相关文章:
- 如何在Yii2资产捆绑包中使用JSX文件
- 通过调用React中的jsx文件设置Highcharts piechhartDefaults
- JSX未创建文件
- 如何编译IIFE JSX文件
- 如何覆盖伊斯坦布尔的React jsx文件
- 用于检查JSX文件中的代码样式的工具
- 在 JavaScript 中动态加载 JSX 文件
- 如何使 Gulp 任务将项目的每个 jsx 文件转换为不同的.js文件
- 等待 JSX 文件编译完成
- 使用jsx命令行编译器--won't编译到文件
- 加载和连接js/jsx文件
- 如何将react JSX文件转换为简单的JavaScript文件[离线转换]
- 如何从多个jsx文件中的组件创建一个复合React.js组件
- 如何在ReactJs.Net的JSX文件中使用自定义ReactJs组件
- 在jsx文件中包含选项卡代码
- 如何从jsx文件导出几个函数
- 当在html中引用jsx文件时,React渲染方法不工作
- React JSX文件给出错误“;无法读取属性'createElement'“未定义”;
- Webpack无法找到jsx文件
- 使用 webpack 加载 .jsx 文件