我正在使用fabricjs渲染复杂的画布。它需要几秒钟,大约3 + - 。有没有办法立即渲染这个页面而不等待渲染,并显示一些加载图像,直到画布可以立即显示?
我父母的组成部分 -
class GraphPage extends React.Component {
constructor(props) {
super(props);
this.state = {
loaded: false,
print: null
}
}
render(){
console.log('render');
const graphList = graphStore.getGraphValue();
var {data} = this.props;
return(
<div>
<div className="inputs">
<Inputs modal={false} unit='%' list={graphList.rotation} descTitle={data.graph.machine}/>
<Inputs modal={false} unit='mm' list={graphList.machine} descTitle={data.graph.rotation}/>
</div>
<div className="graph">
<Print />
</div>
</div>
)
}
}
Print
是我的画布组件。
答案 0 :(得分:0)
如果print
是结构JS组件,我会将onLoaded
回调传递给它,然后当fabric.Image
对象完成加载时,您可以调用该函数并设置{{1这个组件的状态。然后,此函数可以根据该状态呈现不同的内容。