我有使用create-react-app创建的react应用。我想获取用户代码并对其进行评估以呈现它。
这是我到目前为止尝试过的。
import React, { Component } from 'react';
import './App.css';
import { transform } from "@babel/standalone";
const code = transform("<span>Hello world</span>", {
presets: ["@babel/react", "@babel/env"],
}).code
class App extends Component {
render() {
return (
<div className="App">
<div>
{eval(code)}
</div>
</div>
);
}
}
此代码在终端中给我以下错误。
致命错误:接近堆限制分配的无效标记压缩失败-JavaScript堆内存不足
如果要紧,我在Mac上。
答案 0 :(得分:0)
我在一个大型的React项目中也遇到了同样的错误,为了解决这个问题,我使我的大型导入更加具体了。
例如:
来自-
import {SelectBox} from 'somelibrary-react';
至-
import SelectBox from 'somelibrary-react/select-box';
更多说明,您可以在这里找到: bundle size