【发布时间】:2019-07-03 15:25:56
【问题描述】:
我正在处理以下代码:
class Canvas extends React.Component {
componentDidMount() {
const canvas = this.refs.canvas;
const ctx = canvas.getContext("2d");
const img = this.refs.image;
img.onload = () => {
ctx.drawImage(img, 0, 0);
ctx.font = "40px Courier";
ctx.fillText(this.props.text, 210, 75); // THIS IS THE PLACE TEXT IS EMBEDDED INTO THE PICTURE
};
}
render() {
return (
<div>
<canvas ref="canvas" width={640} height={425} />
<img
ref="image"
alt="Stackoverflow56203352"
src={backImg}
className="hidden"
/>
</div>
);
}
}
我正在尝试将其转换为功能形式,但由于缺少 getContext 的替换,我的努力到目前为止一直停滞不前。
即我在这里尝试:
const Canvas = ({}) => {
const canvas = useRef("")
const ctx = canvas.getContext("2d")
const img = useRef("")
img.onload = () => {
ctx.drawImage(img, 0, 0);
ctx.font = "40px Courier";
ctx.fillText(this.props.text, 210, 75); // THIS IS THE PLACE TEXT IS EMBEDDED INTO THE PICTURE
};
return (
<div>
<canvas ref="canvas" width={640} height={425} />
<img
ref="image"
alt="Stackoverflow56203352"
src={backImg}
className="hidden"
/>
</div>
);
}
不会剪掉它。
完整的沙盒代码在location
【问题讨论】:
标签: reactjs